拆地雷 [1]
Line:ted2016.kpvs
Email:Lct4246@gmail.com
FB:http://gg.gg/TedLeeFB/
Email:Lct4246@gmail.com
FB:http://gg.gg/TedLeeFB/
Blog:http://gg.gg/TedLeeBlog/
Jun 1, 2022
[2]
micro:bit 上滿佈著 25 顆地雷,請趕快通報掃雷小組盡速來拆除。
從觀察中建立編程邏輯直覺
請讀者們觀察本文最開頭的 GIF 動畫,比參照題目的要求,拿張白紙動手寫出/畫出該動畫可能的操作流程,而這個流程就是本文的編程邏輯。
請讀者們觀察本文最開頭的 GIF 動畫,比參照題目的要求,拿張白紙動手寫出/畫出該動畫可能的操作流程,而這個流程就是本文的編程邏輯。
設計
程式解說
完整程式碼如圖 3,以下我們來詳細說明程式的設計邏輯:
1. 開局:按鈕 A+B。如圖 3,在按鈕的ㄈ字形事件處理(event handling)積木(blocks) 內置入將 25 顆 LED 全部點亮的積木。思考:要不要先將所有 LED 清除再點亮呢?為什麼?
3. 拆除炸彈:當 (i, j)是亮著(請參考 MakeCode 的積木使用說明文件)時將之關閉,表示該炸彈已清除。
圖 3:完整程式碼
挑戰
加上計時功能,設定一分鐘內要全數拆完 25 顆地雷才算過關。或者,讓 micro:bit 上的地雷改為每次玩時是隨機佈 n 顆地雷,n = 1~25。註:感謝黃教授提供「暗雷」玩法,我們修改規則如下:
按 A+B 時 25 顆 LED 全亮(表示雷區範圍)開局並隨機產生 1~25 顆暗雷。按 A 時,掃雷大隊依序移動探雷。按 B 確認是否找到地雷。若是誤判,則發出錯誤音效。否則,將 LED 變暗表示該顆地雷已被成功拆除。
相關作品
在這段影片中,我們使用了信標(beacon)技術來尋找炸彈並拆除它。相關的程式碼都放在影片留言處。
另外,我們仿做了賴盈志老師的手作做品,也實際動手做出了一個版本。
學習參考
本單元配合南一書局七年級資訊科技第二冊 6-2 節的選擇結構(selective structure)。
沒有留言:
張貼留言