CodeMonkey少兒程式設計第3章 times迴圈

icuic發表於2021-01-23

目標

  • 瞭解程式由哪三種基本的結構組成
  • 瞭解迴圈的概念
  • 掌握times的結構與用法


三種基本結構

計算機程式由三種最基本的結構組成,它們分別是:

  • 順序結構
  • 迴圈結構
  • 選擇結構

千萬不要被這些陌生的術語給嚇住了,它們非常簡單,它們其實是根據我們日常思考和處理問題的方法提煉得來的。

下面讓我給你一一道來。

順序結構

什麼是順序結構?

讓我們通過日常生活中的例子,來說明什麼是順序結構。想一想,在早上起床鬧鐘響了之後,你會做些什麼事情。

假設你是個早睡早起的好孩子,那麼早上鬧鐘響了以後,你會依次做以下事情:

  1. 起床
  2. 關閉鬧鐘
  3. 穿衣
  4. 洗漱
  5. 整理
  6. 出門

以上就是一個很好的順序結構的例子。不難看出,順序結構就是指按照從前至後的順序,依次做不同的事情。

在之前的所有關卡中,我們所寫的程式碼都是順序結構的,都是從第一條指令開始執行,一直到最後一條。

迴圈結構

那什麼是迴圈結構呢?讓我們仍然以上面的例子來進行說明。

假設前一天晚上你熬夜到了凌晨兩三點,早上六點半時,鬧鐘準時響了,此時你想多睡幾分鐘,但又怕睡過頭了。於是,

  1. 鬧鐘響了
  2. 起床
  3. 關閉鬧鐘
  4. 接著睡覺
  5. 鬧鐘響了
  6. 起床
  7. 接著睡覺
    ......

上面就是一個典型的迴圈結構。所謂迴圈結構,就是指重複地做一些事情。

選擇結構

那選擇結構又是什麼樣的呢?讓我們繼續以上面的例子來解釋。

早上出門後,肚子都餓得咕咕叫了,你來到早餐店,你和老闆發生瞭如下的對話:

  1. 問:今天你吃常德牛肉粉還是武漢熱乾麵?
  2. 答:常德牛肉粉
  3. 問:吃圓的還是吃扁的?
  4. 答:圓的
  5. 問:吃紅燒牛肉的還是吃麻辣牛肉的?
  6. 答:紅燒牛肉的

你看,上面的3次問答,其實就是3次選擇。在計算機的世界裡,這就是3個選擇結構的應用。

times指令格式

選擇結構我們放在後面學習,今天讓我們先來學習一個最基本的迴圈結構——times,它的格式如下:

n.times ->

....迴圈體

其中,n是迴圈重複的次數。迴圈體(所有參與迴圈的指令)中的指令會被重複執行n次。之後,計算機就會結束times迴圈,接著執行接下來的語句。

需要注意的是,

  • times->之前有一個空格,且是不能省略的
  • 迴圈體不能從某一行的最開始處書寫民,在它前面必須有一個Tab.(上述以4個.代表tab鍵)

下面是一段典型的times迴圈。

times_example


times的應用

讓我們通過下面這個關卡來更好地理解什麼是times迴圈,以及它的作用。

下面是我自己建立的一個關卡

challenges_times

如果使用順序結構,很明顯,小猴子需要依次完成以下動作:

step 10    # 移動 10 步

turn left   # 左轉

step 10    # 移動10步

turn left   # 左轉

step 10    # 移動10步

turn left   # 左轉

step 10    # 移動10步

turn left   # 左轉

step 20    # 移動20步

上述解題方法使用的就是順序結構的思維。

在學習times之前,我們只能將程式寫成上述的形式,裡面有很多重複的程式碼,不論是檢視或是修改起來都非常的繁瑣。

order

請注意,圖中有個不斷變換位置的桔黃色進度條,它表示被高亮的這一條語句當前正在被執行。這是一個相當實用的功能,通過觀察這個進度條,你就能夠實時地知道當前計算機正在執行哪一條指令了。

如果遊戲執行速度過快,來不及觀察,你可以在設定皮膚上調慢執行速度,這樣就可以更加仔細觀察進度條的移動。

對於這一個關卡,如果使用times迴圈,那上面的程式碼就會簡潔多了,它可以寫成如下的形式:

4.times ->

   step 10  # 移動10步

   turn left  # 左轉

step 20   # 移動20步

程式碼的執行流程如下圖所示:

times

請仔細觀察上圖中桔黃色的進度條是怎樣一步一步地移動的。

上述程式碼有三點需要注意:

  • times->必須有一個空格
  • 迴圈體前面必須有一個tab鍵
  • step 20這一條指令前不能有tab鍵,否則,它就成了times迴圈結構的一部分了

讓我們來看一下,如果在step 20前面有tab鍵,程式是怎麼執行的。

times_error

你看,如果在step 20的前面有tab鍵的話,計算機就會認為它也是迴圈體的一部分了。

好了,本章的內容就到這裡了,趕緊通過作業來檢驗一下你的學習效果吧。

作業

  • 故事模式21 - 30關
  • 進階模式3-1 - 3-10關

    注意,一定保證要所有關卡都拿到三顆星。

小結

  • 計算機的三種基本程式結構是順序結構迴圈結構選擇結構
  • times迴圈的格式,times與->之間的空格不能省,迴圈體前的tab鍵不能忘記
  • 通過桔黃色的進度條,可以觀察計算機指令的執行流程

問答

  • 怎麼能玩到你建立的那一關

    點選這裡,你就能自己程式設計來解決文中提及的關卡了。
  • 怎麼樣才能體驗更多的關卡?

    點選這裡,即刻開始瞭解更多CodeMonkey有趣課程。
  • 文章排版不行啊?

    點選這裡,獲取更好的閱讀體驗。

相關文章