結構化程式設計(9)


複習重複(迴圈)結構

教學影片1

說明

無窮迴圈

無限迴圈 (Repeated Execuction)─這是 Scratch 中最常見,也是課程中最基礎的重複方式。當我們「未設想」何時要結束程式,多使用「無限迴圈」

條件式迴圈

這是 Scratch 中相對比較進階的概念,當中包含了「重複執行」(Repeated Execution) 與「條件判斷」(Conditional Execution),甚至是變數 (Variables) 的概念

一樣的邏輯不一樣的程式

==

範例1

範例二

問題-HaHaHa!寫到我說停

實作篇

教學影片2

實作1:數學專案-以條件式迴圈(Do......Until loop)設計計算1+2+3+......+10的總和

演算法

虛擬碼

1:i←1,sum←0

2:sum←sum+i

3:i←i+1

4:假如i>10就結束並print總和sum,否則返回執行步驟2。

流程圖

程式提示:

程式碼參考

實作2:數學專案-以條件式迴圈(Do......Until loop)設計計算1-100的奇數總和(1+3+5+7+...99=?)

答案:2500

挑戰題

以條件式迴圈(Do......Until loop)設計計算1-407的奇數總和及偶數總和

答案:

實作3:遊戲專案-猜數字遊戲

均一教學

題目說明

我們希望讓舞台上的角色在被點擊之後就立刻之產生一個隨機數,接著詢問使用者要猜的數字是多少,在使用者輸入數字之後,把使用者輸入的數字拿來和隨機數比較,一樣的話就是猜中了,要有回饋的畫面。如果不一樣的話,就要告訴使用者數字太大還是太小,並繼續讓使用者猜測,直到數字正確為止。

1.問題分析


變數:answer-->要被猜測的隨機數


變數:guess-->使用者猜的數字


2.演算法設計

1.開始執行程式

2.產生一個1~99之間的隨機數,放在變數answer(X)中

3.詢問使用者要猜測的數字,放在guess(Y)中

4.如果answer(X)小於於guess(Y),則顯示「你猜的數字太大囉.再少一點」,重回第3步

5.否則如果guess(X)大於answer(Y),則顯示「你猜的數字太小囉..再多一點」,重回第3步

6.顯示「你猜對了」

7.結束程式

 


https://slidesplayer.com/slide/11481704/

3.程式設計

教學影片1

教學影片2

資料引用https://nkust.gitbook.io/scratch-3/kao-kao-ni-de-li