c4c7

var point=new Array();
var delta=new Array();
var pathx=new Array();
var number_path=new Array();
var ball=new Array();
 
var x=new Array();
var y=new Array();
 
function sample(){
 
for(s=1;s<101;s++){
ball[s]=0;    
} 
 
 
tx=0; 
for(s=1;s<101;s++){
for(sx=1;sx<101;sx++){
tx=tx+1;
x[tx]=s;
y[tx]=sx;
point[tx]=0;   
delta[tx]=0;
}
}
 
number=tx;
 
for(s=1;s<number+1;s++){
pathx[s]=new Array();   
}
 
 
for(s=30;s<70;s++){
for(sx=30;sx<70;sx++){
n=search(s,sx);
delta[n]=100;
}   
}
 
 
sx=search(50,1)
point[sx]=100;
 
for(n=2;n<101;n++){
for(s=1;s<101;s++){
c1=search(s,n);    
z=0;
for(sx=-1;sx<2;sx++){
x1=s+sx;
y1=n-1;
sxs=search(x1,y1);
if(point[sxs]>50)z=100;           
}    
if(delta[c1]>50)z=0;
if(z>50)point[c1]=100;        
}
}
 
for(s=1;s<number+1;s++){
x1=x[s];
y1=y[s];
k=0;
for(sx=-1;sx<2;sx++){
x2=x1+sx;
y2=y1-1;
cc=search(x2,y2);
if(point[cc]>50)k=k+1;
if(point[cc]>50)pathx[s][k]=cc;
}
number_path[s]=k;    
}
 
var timer;
var delay = 100;
 
var loop = function () {
 
 if(Math.random()>0.9)strike();
 
for(m=1;m<101;m++){ 
ss=ball[m]; 
if(ss>0){m1=number_path[ss]*Math.random();
m2=Math.floor(m1)+1;
ball[m]=pathx[ss][m2]; 
}
}
 
 
for(s=1;s<101;s++){ 
ss=ball[s]; 
if(y[ss]<2)ball[s]=search(50,100); 
} 
 
paint();    
 
 
clearTimeout(timer);
    timer = setTimeout(loop, delay);
}
 
loop();
paint();
 
 
 
 
 
    }
 
function strike(){
 
    var s,sx;
 
    sx=0;
    for(s=1;s<101;s++){
    if(ball[s]==0)sx=s;    
    }
 
    if(sx>0)ball[sx]=search(50,100);
 
 
 
}
 
 
 
 
function paint(){
 
var sub=new svgpaint();
 
str="<svg width=\"500\" height=\"500\">";
str=str+sub.rect(150,150,200,200,"blue");
    for(s=1;s<101;s++){
sx=ball[s];
if(sx>0)str=str+sub.rect(5*x[sx],500-5*y[sx],5,5,"red");
}
 
str=str+"</svg>";
 
$("#memo").html(str);   
 
}
 
function search(x1,y1){
 
   var s,sx,h;
   sx=0;
for(s=1;s<number+1;s++){    
h=0;
if(x[s]==x1)h=h+1;
if(y[s]==y1)h=h+1;
if(h==2)sx=s;
}
 
return sx;
}
 
最終更新:2016年04月28日 04:37