int []a={9,8,7,6,5,4,3,2,1,0}; →最糟的狀況:全倒
void setup(){
size(500,800);
textSize(36);
textAlign(LEFT,TOP);
showArray(y);
}
int y=0;
void showArray(int y)
{
for(int i=0;i<10;i++)
{
fill(255); rect(i*50, y, 50,50);
fill(0); text(a[i], i*50, y);
}
}
void draw(){
}
void mousePressed()
{
for(int i=0; i<10-1;i++)
{
if(a[i] > a[i+1])
{
int temp=a[i];
a[i]=a[i+1];
a[i+1]=temp;
fill(255,0,0,128); rect(i*50, y, 100,50);
}
}
y+=50;
showArray(y);
}

小精靈
void setup()
{
size(400,400);
}
int X=100,Y=100,dx=1,dy=0,angle=45,diff=2;
void draw()
{
background(0);
arc(X,Y,80,80,radians(angle),radians(360-angle),PIE);
angle+=diff;
if(angle>60)diff=-2;
if(angle<0)diff=+2;
X+=dx;Y+=dy;
}
void keyPressed() →換方向時還在走
{
if(keyCode==RIGHT)dx=+1;
if(keyCode==LEFT)dx=-1;
if(keyCode==UP)dy=-1;
if(keyCode==DOWN)dy=+1;
}

void setup()
{
size(400,400);
}
int X=100,Y=100,dx=1,dy=0,angle=45,diff=2;
void draw()
{
background(0);
arc(X,Y,80,80,radians(angle),radians(360-angle),PIE);
angle+=diff;
if(angle>60)diff=-2;
if(angle<0)diff=+2;
X+=dx;Y+=dy;
}
void keyPressed()
{
if(keyCode==RIGHT){ dx=+1;dy=0;} →
if(keyCode==LEFT){dx=-1;dy=0;}
if(keyCode==UP){dy=-1;dx=0;}
if(keyCode==DOWN){dy=+1;dx=0;} →
}

嘴巴隨方向改變
void setup()
{
size(400,400);
}
int X=100,Y=100,dx=1,dy=0,angle=45,diff=2,dir=0;
void draw()
{
background(0);
arc(X,Y,80,80,radians(dir+angle),radians(dir+360-angle),PIE);
angle+=diff;
if(angle>60)diff=-2;
if(angle<0)diff=+2;
X+=dx;Y+=dy;
}
void keyPressed()
{
if(keyCode==RIGHT){ dx=+1;dy=0;dir=0;}
if(keyCode==LEFT){dx=-1;dy=0;dir=180;}
if(keyCode==UP){dy=-1;dx=0;dir=270;}
if(keyCode==DOWN){dy=+1;dx=0;dir=90;}
}

沒有留言:
張貼留言