教學(xué)背景
本課基于生活中的情境——垃圾分類(lèi),將生活中的場(chǎng)景轉(zhuǎn)移到Scratch程序中,以問(wèn)題解決為線索開(kāi)展本課的學(xué)習(xí)。在解釋變量的基礎(chǔ)上,引導(dǎo)學(xué)生建立變量,實(shí)現(xiàn)垃圾分類(lèi)程序的計(jì)數(shù)功能,進(jìn)而讓學(xué)生通過(guò)討論、分析和探究,建立新的變量,實(shí)現(xiàn)程序的計(jì)時(shí)功能。讓學(xué)生經(jīng)歷從認(rèn)識(shí)變量到使用變量的過(guò)程,在問(wèn)題解決中提升計(jì)算思維。
教學(xué)目標(biāo)
知識(shí)與技能
描述變量的基本作用;區(qū)分變量名和變量值;參照本課中的案例,設(shè)計(jì)垃圾分類(lèi)小程序。
過(guò)程與方法
1.通過(guò)實(shí)現(xiàn)程序的計(jì)數(shù)功能,梳理變量使用的一般步驟。2.經(jīng)歷腳本編寫(xiě)、運(yùn)行和糾錯(cuò)的過(guò)程,嘗試使用變量解決相關(guān)問(wèn)題。
情感態(tài)度與價(jià)值觀
1.認(rèn)同垃圾分類(lèi)的必要性,增強(qiáng)保護(hù)環(huán)境的責(zé)任感。2.體會(huì)程序設(shè)計(jì)的快樂(lè),激發(fā)學(xué)習(xí)興趣,形成應(yīng)用所學(xué)解決現(xiàn)實(shí)問(wèn)題的意識(shí)。
教學(xué)重點(diǎn)與難點(diǎn)
教學(xué)重點(diǎn) 使用變量實(shí)現(xiàn)程序的計(jì)數(shù)功能。
教學(xué)難點(diǎn) 參照本課案例,設(shè)計(jì)完善垃圾分類(lèi)小程序。
教學(xué)過(guò)程
一、觀看視頻,進(jìn)入學(xué)習(xí)情境
創(chuàng)設(shè)垃圾分類(lèi)情境,播放有關(guān)上海市垃圾分類(lèi)的視頻,提問(wèn)相關(guān)問(wèn)題,并呈現(xiàn)本課主題:制作垃圾分類(lèi)小程序。
二、分析問(wèn)題,完善程序雛形
教師提供垃圾分類(lèi)程序支架,請(qǐng)學(xué)生運(yùn)行程序,并根據(jù)垃圾分類(lèi)的規(guī)則,分析程序運(yùn)行過(guò)程中,垃圾投遞正確和投遞錯(cuò)誤時(shí)程序應(yīng)該執(zhí)行何種行為,修改完善香蕉皮角色的腳本,初步實(shí)現(xiàn)垃圾分類(lèi)程序的雛形。
三、變量計(jì)數(shù):模仿+糾錯(cuò)
優(yōu)化程序,使用變量為程序添加計(jì)數(shù)功能,實(shí)時(shí)統(tǒng)計(jì)用戶(hù)的完成數(shù)量。教師通過(guò)生活實(shí)例對(duì)變量的作用、變量名和變量值進(jìn)行說(shuō)明,引導(dǎo)學(xué)生在Scratch中新建變量,學(xué)生在模仿和糾錯(cuò)中實(shí)現(xiàn)程序的計(jì)數(shù)功能。最后師生共同回顧在計(jì)數(shù)功能實(shí)現(xiàn)過(guò)程中變量值的變化情況,梳理變量使用的一般步驟。
四、變量計(jì)時(shí):分析+探究
學(xué)生在區(qū)分變量名、變量值和熟悉變量基本操作的基礎(chǔ)上,對(duì)本課的知識(shí)進(jìn)行遷移和運(yùn)用,進(jìn)一步使用變量為程序添加計(jì)時(shí)功能。學(xué)生通過(guò)討論,分析計(jì)時(shí)功能中變量值的變化情況,根據(jù)小組設(shè)計(jì)的方案應(yīng)用變量實(shí)現(xiàn)計(jì)時(shí)功能,解決問(wèn)題。
五、展示交流,延伸拓展
學(xué)生運(yùn)行程序,記錄小組最佳成績(jī),并交流實(shí)現(xiàn)過(guò)程中遇到的問(wèn)題,以及小組是如何解決的。最后,教師引導(dǎo)學(xué)生課后繼續(xù)優(yōu)化垃圾分類(lèi)程序,并幫助身邊的人了解垃圾分類(lèi)的知識(shí)。
案例詳解
一、Scratch中的變量
變量存放的內(nèi)容是數(shù)據(jù),是信息的載體,是計(jì)算機(jī)識(shí)別、存儲(chǔ)、加工的對(duì)象。由于變量的值是可變的,人們根據(jù)現(xiàn)實(shí)需要,設(shè)計(jì)算法,處理變量的值,將相關(guān)的數(shù)據(jù)保存下來(lái)。在Scratch中的變量位于“數(shù)據(jù)”模塊,在“數(shù)據(jù)”模塊下新建變量后會(huì)新增四個(gè)模塊指令(如圖1),可對(duì)變量的顯示、隱藏和變量的值進(jìn)行設(shè)置。
二、程序設(shè)計(jì)
(一)需求分析
根據(jù)需求,學(xué)生操作變量為垃圾分類(lèi)程序設(shè)計(jì)計(jì)數(shù)和計(jì)時(shí)功能,此處將實(shí)現(xiàn)計(jì)數(shù)功能的變量取名為“完成數(shù)量”,將實(shí)現(xiàn)計(jì)時(shí)功能的變量取名為“時(shí)間”?!巴瓿蓴?shù)量”的初始值為0,變化規(guī)則為每個(gè)垃圾投遞正確時(shí),變量值+1;“時(shí)間”的初始值為0,變化規(guī)則為每隔1秒,變量值+1,直到游戲結(jié)束。
(二)程序?qū)崿F(xiàn)
1.垃圾分類(lèi)程序雛形
舞臺(tái)中有四個(gè)垃圾箱,地面有四個(gè)垃圾角色(如圖2),根據(jù)垃圾分類(lèi)的規(guī)則,每個(gè)垃圾被拖動(dòng)到正確的垃圾箱時(shí)投遞成功,該垃圾角色消失,被拖動(dòng)到錯(cuò)誤的垃圾箱時(shí),垃圾角色返回地面原點(diǎn)。以上功能主要通過(guò)“如果—那么”程序指令實(shí)現(xiàn),以香蕉皮角色為例,香蕉皮屬于濕垃圾,其程序腳本如圖3所示。
2.應(yīng)用變量實(shí)現(xiàn)計(jì)數(shù)功能
新建變量,輸入名稱(chēng)“完成數(shù)量”,在每個(gè)垃圾角色中添加指令,使得每個(gè)垃圾角色碰到正確的垃圾箱時(shí),變量“完成數(shù)量”的值增加1,如圖4所示。
部分學(xué)生會(huì)在初次編程中忽略變量初值的設(shè)置,不過(guò)在測(cè)試時(shí),當(dāng)學(xué)生運(yùn)行一次程序投遞完所有垃圾后,變量的值從0增加到4,但當(dāng)學(xué)生再次運(yùn)行程序時(shí),“完成數(shù)量”的值仍然為4。此時(shí)學(xué)生會(huì)發(fā)現(xiàn)并關(guān)注變量初始值的問(wèn)題,進(jìn)而在程序開(kāi)始時(shí)將“完成數(shù)量”的值設(shè)置為0。(如圖5)
3.應(yīng)用變量實(shí)現(xiàn)計(jì)時(shí)功能
新建變量,輸入名稱(chēng)“時(shí)間”,先將其初始值設(shè)置為0,然后讓變量等待1秒后增加1,并且重復(fù)執(zhí)行。(如圖6)
此時(shí)變量“時(shí)間”相當(dāng)于一個(gè)秒表,隨著時(shí)間的增加,變量“時(shí)間”會(huì)一直增加下去。但垃圾分類(lèi)小程序不需要“時(shí)間”一直增加下去,而是在所有垃圾投遞完成(完成數(shù)量=4)時(shí)停止,從而記錄用戶(hù)完成垃圾投遞的時(shí)間,以顯示其答題水平(快慢)。此時(shí),學(xué)生需要修改圖6中的重復(fù)執(zhí)行指令。一種做法是設(shè)置重復(fù)執(zhí)行指令的結(jié)束條件,當(dāng)“完成數(shù)量=4”時(shí),結(jié)束循環(huán)(如圖7);另一種做法是在重復(fù)執(zhí)行指令中對(duì)變量“完成數(shù)量”的值進(jìn)行判斷,當(dāng)“完成數(shù)量=4”時(shí),停止腳本運(yùn)行(如圖8)。
(三)延伸拓展
請(qǐng)學(xué)生運(yùn)行程序,統(tǒng)計(jì)最佳成績(jī),引導(dǎo)學(xué)生思考還可以從哪些方面繼續(xù)完成作品,如:根據(jù)完成時(shí)間,為用戶(hù)評(píng)定星級(jí)(一顆星、兩顆星、三顆星等);增加更多的垃圾角色,使得垃圾分類(lèi)小程序更有宣傳價(jià)值。
教學(xué)反思
本課的主題與時(shí)事結(jié)合,充分激發(fā)學(xué)生學(xué)習(xí)興趣,將德育滲透于無(wú)形。學(xué)生在垃圾分類(lèi)背景知識(shí)的基礎(chǔ)上活學(xué)活用,設(shè)計(jì)完善垃圾分類(lèi)程序。教學(xué)中為學(xué)生搭建支架,幫助學(xué)生快速建立程序雛形,任務(wù)設(shè)計(jì)由易到難,沿著“變量概念講解—模仿變量計(jì)數(shù)—使用變量計(jì)時(shí)”的學(xué)習(xí)主線,引導(dǎo)學(xué)生從模仿到創(chuàng)造,不斷解決問(wèn)題。解決問(wèn)題的方法是不唯一的,例如實(shí)現(xiàn)計(jì)時(shí)功能中,可以以1秒為間隔單位,也可以以0.1秒為間隔單位,學(xué)生根據(jù)自己設(shè)計(jì)的方案予以實(shí)現(xiàn)。隨著學(xué)生操作能力和思維能力的不斷提升,后續(xù)教學(xué)中可以給學(xué)生更開(kāi)放的空間,讓學(xué)生從更高層次上提出方案、實(shí)現(xiàn)方案、解決問(wèn)題。