2020年5月8日 星期五

week11


//int []a=new int[10];//Java's Array
//int []a={3,0,1,8,7,2,5,4,6,9};//https://www.youtube.com/watch?v=lyZQPjUT5B4
//int []a={6,3,5,9,1,0,4,2,7,8};
//int []a={1,2,3,5,0,4,6,7,8,9};
//int []a={0,9,1,2,3,5,4,6,7,8};//對於快要排好的東西, 特別快!!!
int []a={9,8,7,6,5,4,3,2,1,0};//最糟的狀況:全倒 => QQ
void setup(){
  size(500,800);
  //for(int i=0;i<10;i++){//random choose number
  //  a[i]=int(random(10));//亂數決定數字
  //}
  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,angle=45,diff=1;
void draw(){
  background(0);
  arc(X,Y,80,80,radians(angle),radians(360-angle),PIE);
  angle+=diff;
  if(angle>60) diff=-1;
  if(angle<0) diff=+1;
}


按上下左右可以讓小精靈改變它的移動方向。


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){dx=0;dy=-1;dir=270;}
  if(keyCode==DOWN){dx=0;dy=+1;dir=90;}
}
多加dir這個數值,讓小精靈移動的方向的角度改變。


int [][]bean={
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1},
  
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1},
  {1,1,1,1,1, 1,1,1,1,1} };
void setup(){
  size(400,400);
}
int X=100,Y=100,dx=1,dy=0,angle=45,diff=2,dir=0;
void draw(){
  background(0);
  fill(255);
  for(int y=0;y<10;y++){
    for(int x=0;x<10;x++){
      if(bean[y][x]==0) continue;
      ellipse(20+x*40,20+y*40,10,10);
      if(dist(X,Y,20+x*40,20+y*40)<20) bean[y][x]=0;
    }
  }
  fill(#FFCF0D);arc(X,Y,40,40,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){dx=0;dy=-1;dir=270;}
  if(keyCode==DOWN){dx=0;dy=+1;dir=90;}
}
讓小精靈吃豆子吧~

沒有留言:

張貼留言