之後就講解了 泡泡排序法,也看了上學期看的影片(跳舞的那個)
只要點一下就會做一輪排序,可以看到的排序法排序,最後才把數字排的大小順序搞定好。
老師也說了,越是快排好的組合,用泡泡排序的速度會越快越有效率。
所以我把數字稍微排過,然後打亂了一點,結果真的排得更快了呢。
連結:https://www.youtube.com/watch?v=lyZQPjUT5B4
複習完之後,就進到了今天"玩遊戲學程式"的部分了(灑花)
要延續上禮拜教的小精靈吃東西。
這邊可以看到他嘴巴會一直開開關關且往右一直跑(程式預設)

然後按上下左右會移動,但是卻不會改變方向。
所以要來拯救他!
程式碼如下:
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;}
}






沒有留言:
張貼留言