Frog 線上教材 |
Frog 是專門為了這份教材設計的電腦遊戲, 用來當作最基礎的程式語言訓練;在遊戲中學習。 這個遊戲假設在棋盤上有一隻青蛙,如下圖。
想像青蛙的尾巴 (在它退化以前) 捲著一隻筆。 空心箭頭表示筆是舉起來的,實心箭頭代表筆是放下來的。 透過指令,可以指示青蛙做五種動作:舉起筆、放下筆、向左轉、向右轉、跳。 如果在筆放下的狀態,青蛙跳入的方格會被塗黑 (已經是黑的則不改變); 如果在筆舉起的狀態,方格的顏色則不改變。 (妳也可以把青蛙的握筆行為想像成牠的另一種生物行為, 我們不想在這裡說明。) 遊戲的目標是指示青蛙,讓青蛙在右側網格中留下與左側同樣的圖案:
請讀者自行在新的視窗內打開以下遊戲程式,並參照後面的指令表, 在遊戲中學習最基本的程式功夫吧。
以下是 Frog 的指令表。
指令碼 | 名稱 | 說明 |
---|---|---|
0 | END | 程式結束,青蛙消失 |
1 | UP | 筆舉起 |
2 | DOWN | 筆放下 |
3 | R-TURN | 向右轉 |
4 | L-TURN | 向左轉 |
5 | JUMP | 跳一格 |
6 n | ROLL | 跳 n 格,n 是 0 或正整數 |
在遊戲面板的「指令」欄,我們依序寫下指令,每個指令都是 0 或正整數, 兩個指令之間用空格隔開即可。 在邏輯上,上面的例題可以用以下指令完成:
(左上角黑格) 跳 右轉 右轉 筆放下 跳 筆舉起翻譯成程式語言,就是
(第二列黑格) 左轉 跳 左轉 筆放下 跳 筆舉起
(正方形) 右轉 跳 筆放下 跳4格 右轉 跳3格 右轉 跳3格 右轉 跳2格 (消失) 結束
5 3 3 2 5 1 4 5 4 2 5 1 3 5 4 2 6 4 3 6 3 3 6 3 3 6 2 0讀者不妨試試看。輸入這批指令,按 [低速執行] 紐,觀察青蛙的行為。 按 [清除棋盤] 再按 [低速執行],可以重複觀看。
當跳得太遠,超出棋盤邊界時,就是「錯誤」(想像那四周是斷崖),程式將被中斷。
最後,偷偷告訴你,上一題的「左上角黑格」,也可以這樣做:2 6 0 1。
程式:李易霖,網頁:單維彰 (2009/06/05) ---