資訊內容
第16課 口算生成器
第16課 口算生成器
任務導航
有一天你的數學老師找到你,期望你能夠幫助她編寫一個軟件,給低年級的同學出口算題,想必這難不倒你吧。同學們來幫助增加口算學習的興趣,提高口算學習的成績,我們為小學生們編寫一個口算練習的小程序吧!如圖16.1所示。
![]() |
圖16.1 口算生成器界面 |
Follow Me
1. 簡單口算生成器
任務分析
簡單口算生成器的功能如表16.1所示。
表16.1 簡單口算練習的功能
功能 | 按空格鍵,在第一個鏈表中出題,在第二個鏈表中給出答案。 |
按空格鍵時,先清空兩個鏈表的所有信息;使用重復n次控制程序出題數目;在“出題”鏈表中顯示100道加法題,加數分別為0到99之間隨機數,隨機數可使用“數字和邏輯運算”分類中的

來產生,加法算式可使用

來連接生成;在第二個鏈表中顯示出兩個加數的和,如圖16.2簡單口算生成器界面。
![]() |
圖16.2簡單口算生成器界面 |
第1步:新建Scratch程序,保存文件到指定位置,文件名為“簡單口算生成器”。
- 第2步:刪除“角色1”。
- 第3步:新建兩個鏈表分別命名為“出題”和“答案”,分別調整好大小,放置到舞臺中合適位置,如圖16.3所示。
![]() |
圖16.3簡單口算生成器設計界面 |
- 第4步:新建三個變量分別命名為“加數1”、“加數2”和“結果”,三個變量都不顯示在舞臺上,如圖16.4。

圖16.4 隱藏變量
- 第五步:添加腳本如圖16.5所示。

圖16.5簡單口算生成器的腳本
- 第6步:按下“空格”鍵,運行并調試程序。
DIY
試修改“簡單口算生成器”,嘗試出60道加數范圍是0到50的加法題。
2. 加減法口算生成器
任務分析
剛才的“簡單口算生成器”只能出加法題,不能出減法題,所以現在來改進簡單口算生成器,使其能夠隨機生成加減法算術題,如圖16.6所示。
表16-2 加減法口算生成器功能
功能 | 按“空格”鍵,在第一個鏈表中隨機生成100道加法、減法口算題,在第二個鏈表中產生答案。 |
可以再使用一個隨機數,使其隨機產生1或2,當該數為1時,生成加法題,為2時生成減法題。生成減法題時要考慮減數小于被減數,此時可使被減數為一個0到99之間的隨機數,而減數則為0到被減數之間的隨機數,如圖16.6所示。
![]() |
圖16.6具有減少菜品功能的點菜器界面 |
第1步:另存文件,命名為“加減法口算生成器”。
- 第2步:刪除變量“加數1”和“加數2”,如圖16.7所示。

16.7刪除變量“加數1”
第3步:新建兩個變量“數1”和“數2”,兩個變量都不顯示在舞臺上。
第4步:修改腳本如圖16.8所示。

16.8加減法口算生成器腳本
- 第5步:按下“空格”鍵,運行并調試程序。
DIY
試修改“加減法口算生成器腳本”,使其能生成60道減法題。
3. 口算練習
請完善口算出題程序,使其能夠進行出題、答題和判斷正誤,如圖16.9所示。
![]() | ![]() |
圖16.9口算練習界面 |
表16-3 口算練習功能
功能 | 單擊“開始答題”按鈕,程序提示先輸入答題數目,之后答題。 |
使用“偵測”中的

來詢問和接受結果,“偵測”中“回答”的值為用戶輸入數據。
Follow Me
- 新建Scratch程序,保存文件到指定位置,文件名為“口算練習”。
- 刪除“角色1”,繪制新角色命名為“開始答題”。
- 新建四個變量,分別命名為“數1”、“數2”、“結果”和“題號”,僅“題號”顯示在舞臺上。
- 選中角色“開始答題”,添加腳本,如圖16.10所示。
![]() |
圖16.10口算練習腳本 |
- 單擊“開始答題”,運行并調試程序。
DIY
嘗試為“口算練習”添加題目鏈表。
知識著陸
編程:用隨機數編制混合運算,如果…否則…結構
設計:用詢問功能幫助設計人性化的用戶界面
研發:從生活的環境出發,尋找合適的編程需求,助人的同時幫助自己
創作天地
- 試編程,使程序能夠生成四則運算題目。
- 需要將加法題的和控制在100以內,如何改進程序呢
- 減法題需要讓被減數大于減數,如何改進程序
- 導出題目到excel當中,確定一頁可以打印出來,最多打印多少道題目,重新修改一下你的程序,讓它更符合使用者的習慣。
視野拓展
數字匠人(Digital Graftman)將會是未來的一種流行的職業,他們生活得很自由,每天以創意的小點子生活,有時候零散工作,有時候遇到大的項目他們會聚集起來共同完成一個項目。他們當中,每個人有自己擅長的領域有軟件高手、硬件達人、制造巧匠、數字科學家、設計師和藝術家,他們的創意變成了產品原型,然后將產品原型放在網絡上爭取投資和訂購,當訂購數目達到一定的數量后,會有專業的加工中心幫助他們生產產品,快捷的物流手段幫助他們將產品送到客戶手中,在這個過程中圍繞著創意各取所需。這就是數字匠人,他們是一群自由的充滿創意的普通人,他們不是少數的精英群體,他們是生活在你周圍的人,你很可能會成為他們當中的一員。通過本書的學習你應該對藝術、科學和工程這三個領域的研究內容和自己適合哪個領域有了一個初步的了解了,那么從小立下大志,通過網絡不斷的學習,你的成功就是民族復興的一份子,數字匠人將會引領第四次工業技術革命,于此同時也是我們國家屹立世界潮頭的最后機會,期待你的成果,如果你想成為一個數字匠人,請在這里寫下你的名字數字匠人:___________!
[趙軼華1]左邊鏈表和右邊鏈表不對應
下面的步驟中是設定了減數小于被減數的,但是圖中仍然有答案為負數
100以內加減法結果是不是也不超過100?
