楊尚琴
● 教材分析
《編程解決問題》是上??萍冀逃霭嫔绺咧行畔⒓夹g(shù)必修模塊《信息技術(shù)基礎(chǔ)》第三章第二節(jié)的內(nèi)容。本節(jié)主要內(nèi)容是讓學(xué)生了解編程解決問題的一般過程,感受編程解決問題的強(qiáng)大功能和魅力,讓學(xué)生初步掌握錄入程序代碼、運(yùn)行程序、調(diào)試程序等基本處理技能。筆者將本節(jié)課內(nèi)容分為三個(gè)部分:第一部分是小程序演示,讓學(xué)生感受程序的魅力;第二部分是簡(jiǎn)單介紹編程解決問題的一般過程,講解分析問題、設(shè)計(jì)算法、編寫程序、調(diào)試運(yùn)行四個(gè)步驟;第三部分是學(xué)生上機(jī)體驗(yàn)程序的錄入、調(diào)試運(yùn)行、修改等過程。
● 學(xué)情分析
高一學(xué)生對(duì)編程解決問題還很陌生,只有少部分學(xué)生在初中階段有過機(jī)器人學(xué)習(xí)的經(jīng)歷,但這部分學(xué)生對(duì)程序的理解也僅限于可視化程序模塊的拖拽使用,沒有真正接觸過編程的過程。鑒于這種情況,筆者先對(duì)編輯的一般過程進(jìn)行簡(jiǎn)單介紹,演示編程的過程,并上傳導(dǎo)學(xué)案和微課。學(xué)生在完成任務(wù)時(shí),可以參閱導(dǎo)學(xué)案或觀看微課,以便更順利地完成本節(jié)課的學(xué)習(xí)任務(wù),體驗(yàn)編程的樂趣。
● 教學(xué)目標(biāo)
知識(shí)與技能目標(biāo):利用VB軟件體驗(yàn)計(jì)算機(jī)編程的過程,用編程解決簡(jiǎn)單問題。
過程與方法目標(biāo):引入編程故事,激發(fā)解決問題的興趣,編寫、運(yùn)行程序,體驗(yàn)編程解決問題的一般過程。
情感態(tài)度與價(jià)值觀目標(biāo):講解編程解決問題的一般過程,培養(yǎng)分析問題的能力和動(dòng)手能力;在體驗(yàn)編程的過程中,培養(yǎng)互助、合作和研究意識(shí)。
● 教學(xué)重點(diǎn)、難點(diǎn)
重點(diǎn):理解編程解決問題的一般過程,體驗(yàn)編寫程序、調(diào)試運(yùn)行、修改程序的過程。
難點(diǎn):如何按照需求改動(dòng)程序。
● 教學(xué)過程
1.觀看視頻,引發(fā)思考
學(xué)生觀看視頻《我國(guó)首臺(tái)千萬(wàn)億次超級(jí)計(jì)算機(jī)系統(tǒng)研制成功》,思考如下問題:計(jì)算機(jī)為什么有如此強(qiáng)大的功能或本領(lǐng)?如何讓計(jì)算機(jī)為我們服務(wù)?(學(xué)生看課本第68頁(yè)第一段,回答以上問題)
用計(jì)算機(jī)進(jìn)行信息處理的兩種基本方法:①利用現(xiàn)成的軟件讓計(jì)算機(jī)工作;②編制計(jì)算程序,讓計(jì)算機(jī)為自己服務(wù)。
設(shè)計(jì)意圖:通過讓學(xué)生觀看視頻,引出本節(jié)課的學(xué)習(xí)內(nèi)容“編程解決問題”,同時(shí)也讓學(xué)生為我國(guó)高科技領(lǐng)域取得的成績(jī)感到自豪。
2.看小故事,體味編程魅力
學(xué)生觀看《百錢買百雞》的故事,思考怎么解決問題,隨后編寫程序得出解決方案,程序如下:
Private Sub Command1_Click()
Dim i,j,k
For i = 0 To 20
For j = 0 To 33
k = 100-i-j
If 5 * I + 3 * j + k/3 = 100 Then Print i, j, k
Next j
Next i
End Sub
設(shè)計(jì)意圖:教師通過“百錢買百雞”的小程序,短時(shí)間得出所有答案,讓學(xué)生知道有了這個(gè)小程序,人人都可以當(dāng)神童,激發(fā)他們學(xué)習(xí)編程的興趣。
3.理解編程解決問題的一般過程
筆者列出解數(shù)學(xué)應(yīng)用題的常規(guī)過程,并通過比較使學(xué)生理解編程的一般過程(如圖1)。
設(shè)計(jì)意圖:常規(guī)解數(shù)學(xué)應(yīng)用題的過程是學(xué)生比較熟悉的,對(duì)比解數(shù)學(xué)題的步驟,理解編程解決問題的一般過程,促進(jìn)學(xué)生對(duì)這個(gè)過程的記憶和理解。
4.實(shí)戰(zhàn)演練——小球平拋運(yùn)動(dòng)
(1)分析問題
先明確問題的要求,掌握所要解決問題的內(nèi)容和要求;再分析已知的信息,掌握與解決問題相關(guān)的資料;最后確定輸出的內(nèi)容,掌握解決問題最終要達(dá)成的目標(biāo)。為了使問題更清晰、明了,筆者制作了下表,讓學(xué)生填寫。
(2)設(shè)計(jì)算法
設(shè)計(jì)算法就是尋找問題求解的方法和確定具體的求解步驟。在分析問題的基礎(chǔ)上設(shè)計(jì)生成了小球平拋運(yùn)動(dòng)的流程圖(如圖2)。
(3)編寫程序
算法確定后,依據(jù)算法編寫程序(如圖3)。
(4)調(diào)試運(yùn)行
編程完畢后(如下頁(yè)圖4),運(yùn)行調(diào)試“小球平拋軌跡”程序(如下頁(yè)圖5)。
設(shè)計(jì)意圖:小球平拋運(yùn)動(dòng)屬于物理學(xué)科的問題,以它為例學(xué)生更容易理解,而且也貫穿了學(xué)科融合的理念。
5.課堂實(shí)踐,體驗(yàn)編程過程
學(xué)生登錄教學(xué)網(wǎng)站,下載并參閱導(dǎo)學(xué)案和微課視頻,完成如下任務(wù)。
任務(wù)一:復(fù)制、粘貼教師給的“百錢買百雞”程序,調(diào)試并查看運(yùn)行結(jié)果。(5分)
任務(wù)二:錄入教材第71頁(yè)的小球平拋運(yùn)動(dòng)的軌跡程序,并調(diào)試運(yùn)行成功出現(xiàn)小球平拋運(yùn)動(dòng)的軌跡。(10分)
任務(wù)三:程序調(diào)試運(yùn)行成功后,對(duì)程序進(jìn)行一些參數(shù)更改,總結(jié)小球軌跡的變化情況。觀察修改參數(shù),回答以下問題:①初速度的大小不同,小球的軌跡有什么變化?(5分)②更改時(shí)間的大小,小球的軌跡有什么變化?(5分)③更改小球半徑大小,小球的軌跡有什么變化?(5分)
設(shè)計(jì)意圖:學(xué)生通過運(yùn)行“百錢買白雞”程序,感受程序解決問題的快捷;通過編寫、調(diào)試“小球平拋運(yùn)動(dòng)”程序,體驗(yàn)編程帶來的成功與喜悅。
6.統(tǒng)計(jì)完成情況,評(píng)價(jià)加分
組長(zhǎng)統(tǒng)計(jì)任務(wù)一、二的完成結(jié)果,并把分?jǐn)?shù)登記到教學(xué)網(wǎng)站上。教師使用隨機(jī)點(diǎn)名程序抽取學(xué)生回答任務(wù)三的相關(guān)問題,根據(jù)他們的回答情況給予加分鼓勵(lì)。
● 教學(xué)反思
由于這節(jié)課的內(nèi)容有一定難度,教師需要對(duì)學(xué)生進(jìn)行引導(dǎo)、演示,降低操作難度,激發(fā)他們的學(xué)習(xí)興趣。學(xué)生對(duì)本節(jié)課的學(xué)習(xí)興趣濃厚,都能積極體驗(yàn)任務(wù)一“百錢買百雞”程序;任務(wù)二挑戰(zhàn)“小球平拋運(yùn)動(dòng)軌跡”程序,有一半學(xué)生一次性全部輸入正確,并成功運(yùn)行,另一半學(xué)生在程序錄入中出現(xiàn)錯(cuò)誤,修改幾次后成功運(yùn)行。程序錄入并運(yùn)行的過程考查了學(xué)生做事的嚴(yán)謹(jǐn)性。學(xué)生都能積極主動(dòng)地完成任務(wù),一次性錄入成功的學(xué)生特別有成就感;錄入出現(xiàn)問題的學(xué)生也會(huì)請(qǐng)教其他同學(xué)和教師,直到修改正確為止??吹阶约壕帉懙某绦蚰苷_\(yùn)行,學(xué)生的喜悅之情溢于言表。任務(wù)三是對(duì)程序參數(shù)進(jìn)行修改,學(xué)生都能積極嘗試,反饋效果較好。