2019年1月8日 星期二

台中市題目「九九乘法路跑大賽」解題心法

臺中市國小組第四題「九九乘法路跑大賽」考驗大家使用「詢問等待」的時機,以及文字組合的能力。
(註:本題使用Scratch3.0解題,執行時請放大到全螢幕,否則無法看見輸入文字。)



【玩法】
滑鼠按 Start 開始 電腦隨機出題請你計算九九乘法
玩家算出答案 用鍵盤打入數字 再按 Enter 鍵
答案正確會往前移動 15 步
答案錯誤會往後走 2 步
玩家與電腦誰先走到 y=150 獲勝


【素材】
角色: You,Computer,Text, 舞台:Backup,lost,win
可到以下網址下載,本題為第4題
https://contest.tc.edu.tw/pub/showrank.aspx

解題心法:

一、匯入舞台的三個造型與角色變化:10%
1. 角色 computer 2. 角色 You 與 3. 背景
4. You 定位在(-45,-164)
5. 角色 You 每隔 0.2 秒換下一個造型
6. Computer 定位在(37,-164)
7. 角色 Computer 每隔 0.2 秒換下一個造型

以上都是基本設定

You的程式碼如上圖。
Computer的程式碼如上圖,基本上兩者只有x座標不同。

二、按下綠旗 畫面右上角會出現倒數計時5 > 4 > 3 > 2 > 1 > Start > gogogo 並廣播開始起跑:10%


角色Text的程式碼如上圖所示(定位點僅供參考)。

三、接收到廣播 Start 後 Computer 的移動:20%
當接收到 Start 廣播,用「重複無限多次」讓 Computer 每隔 1 秒,前進 10 單位。

Computer的程式碼如上圖。

四、接收到廣播 Start 後,開始提問問題:20%
1. 懂得用偵測之詢問等待
2. 懂得用字串組合問九九乘法問題
3 懂得用 隨機變數 設定 1~9 的數字

You的程式碼如上圖。此部分需要新增兩個變數A、B,提問中利用字串組合結合文字。

五、接收到廣播 Start 後,回答問題後 角色 You 的移動:20%
規則 : 角色 YOU 懂得用「如果否則」,偵測玩家輸入的數字與變數 x 乘 y質做比對,答案正確就前進 15 個單位,答案錯誤就後退 2 單位。


同上圖,利用「如果...否則」來比對答案是否正確。

六、Computer 的獲勝與廣播:10%
如果 Computer 角色的 y 座標值超過 150 就會說出 Computer 獲勝並廣播「you lost」,舞台端收到 You Lost 就將場景換到 You Lost,並執行全部停止。

參考「Computer的程式碼」。


七、You 的獲勝與廣播:10%
如果 YOU 角色,y 座標值超過 150 就會說出 「You win」,並廣播 「You win」,舞台端收到 You win 就將場景換到 You win,並執行全部停止。


參考「You的程式碼」。

附註:舞台的程式碼如下:

另外在You需另加上此一程式:
在Computer需另加上此一程式:
加上此程式才能確保任一角色先抵達終點時,其他角色立刻停止動作,否則兩者最後都會出現Win的畫面,並不合理。

沒有留言:

張貼留言