performance optimization of vm/lex/parse/test

This commit is contained in:
ValKmjolnir
2021-06-24 00:26:26 +08:00
parent f0565c7de6
commit a734b99beb
8 changed files with 205 additions and 292 deletions
+1 -9
View File
@@ -123,9 +123,7 @@ var backward=func(x)
return;
}
var cnt=0;
var show=0;
var error=100;
var (cnt,error)=(0,100);
while(error>0.0005)
{
error=0;
@@ -136,12 +134,6 @@ while(error>0.0005)
backward(i);
}
cnt+=1;
show+=1;
if(show==350)
{
show=0;
print('epoch ',cnt,':',error,'\r');
}
}
print('finished after ',cnt,' epoch.\n');
foreach(var v;training_set)
+12 -16
View File
@@ -1,31 +1,27 @@
import("lib.nas");
var yMin=-0.2;
var yMax=0.2;
var xMin=-1.5;
var xMax=-1.0;
var (yMin,yMax,xMin,xMax,line)=(-0.2,0.2,-1.5,-1.0,"");
var (yDel,xDel)=(yMax-yMin,xMax-xMin);
for(var yPixel=0;yPixel<24;yPixel+=1)
{
var y=(yPixel/24)*(yMax-yMin)+yMin;
var y=(yPixel/24)*yDel+yMin;
for(var xPixel=0;xPixel<80;xPixel+=1)
{
var x=(xPixel/80)*(xMax-xMin)+xMin;
var x=(xPixel/80)*xDel+xMin;
var pixel=" ";
var x0=x;
var y0=y;
var (x0,y0)=(x,y);
for(var iter=0;iter<80;iter+=1)
{
var x1=(x0*x0)-(y0*y0)+x;
var y1=2*x0*y0+y;
x0=x1;
y0=y1;
var d=(x0*x0)+(y0*y0);
if(d>4)
(x0,y0)=(x1,y1);
if((x0*x0)+(y0*y0)>4)
{
pixel=chr(" .:;+=xX$&"[int(iter/8)]);
pixel=chr(" .:;+=xX$&"[iter/8]);
break;
}
}
print(pixel);
line~=pixel;
}
print('\n');
}
line~='\n';
}
print(line);
+2 -3
View File
@@ -1,10 +1,9 @@
import("lib.nas");
var t=1;
var res=0;
var (t,res)=(1,0);
for(var m=1;m<4e6;m+=2)
{
res+=t*1/m;
t*=-1;
t=-t;
}
println(res*4);