2020年5月8日 星期五

11

泡泡排序法

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;}
}





沒有留言:

張貼留言