2017年11月12日 星期日

Lesson 05. Truth or Dare (真心話大冒險)

概述:

課程的第五個專案,在教導學生利用 Micro:bit 使用多重編碼的方式透過程式積木 Coding 的方法。輸入後,程式的陳述式會隨機產生一個 truth or dare 顯示在螢幕上,並透過LEDs 選擇遊戲者。
真心話大冒險是一種遊戲,又稱誠實與大膽、Truth or Dare、True or Dare,可以由二人或多人參與。
若兩個遊戲者時,兩位遊戲者通過猜拳比試,或輪流擔任勝者和負者,負者必須二選一,選擇「真心話還是大冒險」。(維基百科)


教學內容:

教學目標

  1. 可以利用 if 陳述式和簡單迴圈(loop)的演算法概念設計程式。 (AL)
  2. 學會宣告和賦值變數。 (AB)
  3. 在迴圈中使用變數和關係運算子來控制終止。 (AL) (GE)
  4. 使用邏輯推理來預測結果。 (AL)
  5. 發現和糾正錯誤,調整系統的規則。 (AL)
  6. 利用演算法創造實現給定的目標程式。 (AL)
  7. 能理解程式設計是解決問題方案和電腦之間的橋樑。 (AB)
  8. 能使用單向、雙向、多向、巢狀判斷陳述式。(AL)
Computational Thinking Concept:
AB=Abstraction; DE=Decomposition;AL=Algorithmic Thinking;EV=Evaluation;GE=Generalisation。

學生將具備的能力

  • 同時運行兩個程式Blocks。
  • 建立隨機產生的變數。
  • 能使用if... then...else (如果...那麼...否則) 條件判斷式。
  • 在 LEDs 上顯示個別的圖案。

課程挑戰目標

基於此專案延伸的任務挑戰目標。
  • 在遊戲中添加玩家的數量並顯示誰在玩。
  • 添加不同方向的箭頭。
  • 添加一個箭頭旋轉的動畫。
  • 添加一個是否完成真心話大冒險的計分系統。

Step by Step

這個 Program 利用旋轉 Micro:bit 後,利用箭頭選擇玩家,玩家在按下 Micro:bit 的按鍵A後,進行真心話大冒險。
第一個步驟,即是創建箭頭。從 “程式積木區” 選單中的“基本” 積木中,選擇 “顯示 指示燈 (Show LEDs)” 積木。
將 “顯示 指示燈 (Show LEDs)” 積木拖拉到程式編輯工作區,然後按一下要點亮的框來繪製圖案。紅色指示燈亮著(本範例是箭頭;如下圖)。
為了確保LED始終恆亮,所以我們將 “顯示 指示燈 (Show LEDs)” 積木放置在一個 "重複無限次" 的迴圈中。(如下圖)
接下來,Program 的下一個階段,我們將設計一個當按下按鍵,進行真心話大冒險。
從 “程式積木區” 選單中的 “輸入” 積木中選擇 “ 當 A 鍵被按下” 積木並拖拉到程式編輯工作區。
從變數積木中選擇 "建立一個變數",並設定積木名稱為"Random"
將程式積木區中 "變數" 積木的 "變數 item 設為0" 的積木拖拉至程式編輯區。
變更積木中 "item" 的名稱為 "Random"。
再將程式積木區中 "數學" 積木的 "Pick Random 0 to 4" 的積木拖拉至"變數 item 設為0" 的積木後方,取代積木 "0"。
將 "Pick Random 0 to 4" 積木中的 "4" 變更為 "1"。(如下圖)
接著,將程式積木區中 "邏輯" 積木的 "如果...那麼...否則 (if...then...else)" 積木拖拉至程式編輯區,堆疊在 上一個積木下方。
同時將程式積木區中 "邏輯" 積木的運算式 "0=0" 積木拖拉堆疊至"如果...那麼...否則 (if...then...else)" 積木中,將變數積木 "Random" 取代第一個 "0" 。(如下圖)
最後,將程式積木區中 "基本" 積木的 "顯示 文字 Hello" 積木拖拉堆疊至"如果...那麼...否則 (if...then...else)" 積木中,第一個積木堆疊在 "那麼" 的區塊中,變更文字為 "Truth!"
重複上一個步驟,將積木堆疊至 "否則" 區塊中,變更文字為 "Dare!"。(如下圖)
程式完成,可以下載並儲存至 Micro:bit 中,觀察實際執行結果。

1 則留言:

  1. 謝謝您詳細的介紹~
    想給高年級小朋友有新的學習,Micro:bit希望可以給他們更有挑戰性~

    by正苦惱資訊志工課程的大學生

    回覆刪除

Related Posts Plugin for WordPress, Blogger...