依序點燈 ( 數字函式 )
這篇文章會介紹如何使用「函式」、「餘數」、「無條件捨去」、「邏輯判斷」、「變數」、「點亮」積木,做出從左上到右下,依序點亮 1~25 顆 LED 燈的效果。
積木程式原理
首先定義 micro:bit 的燈號順序,從左到右,從上到下,定義出 1~25 顆燈的順序。
由於 micro:bit 是透過 xy 座標來點亮 LED,所以要透過下列公式進行「第幾顆燈和 xy 座標」的轉換。
- 如果燈號不能被 5 整除 ( 除以 5 的餘數不等於 0 ):
- x = ( 燈號除以 5 的餘數 ) - 1
- y = 無條件捨去 ( 燈號除以 5 )
- 如果燈號能被 5 整除 ( 餘數等於 0 ):
- x = 4
- y = 無條件捨去 ( 燈號除以 5 ) - 1
了解原理後,建立一個名為「燈號」的函式,並增加一個「數字」參數,命名為 num。
函式加入參數可以參考:函式參數
接著透過「如果...否則...那麼」、「變數」、「餘數」、「無條件捨去」...等積木,按照公式進行組合,組合完成後使用「點亮 xy」積木將對應的 LED 燈點亮。
函式完成後,在 micro:bit 啟動時建立一個數值為 0 的變數 n,透過重複無限次積木,每次重複時,讓 n 增加 1,並將 n 放入函式中執行。
micro:bit 啟動之後,就會看見燈號依序亮起。
範例解答
範例解答:依序點燈 ( 數字函式 )
延伸練習
如果已經熟悉了依序點燈 ( 數字函式 ) 的原理,還可以嘗試更多好玩的作法:
意見回饋
如果有任何建議或問題,可傳送「意見表單」給我,謝謝~