Scratch 3 範例七 陣列清單的應用
問題學習目標: 認識陣列,將陣列應用在Scratch清單程式設計。
範例七: 樂透選號機
(一) 情境概述
大樂透、小樂透、四星彩、刮刮樂…各式各樣的樂透,您真的樂透了嗎? 樂透的開獎原理為何?現在我們就來設計樂透隨機選號機。
(二) 問題解析
多元思考一:你想做的樂透選號機是像電視一樣,有38個彩球在箱子中滾動,隨機選一個球?
問題解析1. 38個彩球需要新增38個角色,才能獨立轉動。
問題解析2. 當按下「開始」彩球開始滾動。
問題解析3. 當選中號碼是1號時,1號彩球掉到指定位置。
多元思考二:或是像黑箱一樣38個號碼,隨機出現一個號碼?
問題解析1. 設定1個角色有38個造型或背景,依據選出的號碼變換造型或背景。
問題解析2. 當選中號碼是1號時,切換1號的造型或背景。
多元思考三:選出的號碼會重複嗎?如何設計不重複選號?
問題解析1. 將選中號碼挑出來放在清單中。
問題解析2. 判斷選中的號碼是否在清單中,如果有,就表示已選過,需要重選。
(三) 設計演算法
開始選號-->隨機選號-->判斷選中號碼是否重複-->如果重複,就重新選號。
-->如果未重複,顯示選中號碼。
(四) 設計程式
建立角色或造型、背景。
建立清單儲存選中的號碼,並判斷是否重複。
(五) 執行結果
點擊綠旗,執行結果。
(六) 結果檢核
程式執行結果是否與預期的情境相符?
如果程式執行結果與預期不符? 發生什麼問題? 如何解決?
(七) 延申學習
如果我想動手腳,只想選「單號」或「雙號」限定版,應該如何設計?
如果我想限定跳過某個號碼永遠選不到或某個號碼必中,應該如何設計?