算法與程序?qū)崿F(xiàn)是高中信息技術(shù)課程中一項非常重要的內(nèi)容,它緊扣新課標(biāo)四項核心素養(yǎng)中計算思維培養(yǎng)的課程目標(biāo)。信息技術(shù)課堂應(yīng)將問題解決作為學(xué)習(xí)的一種方式,引導(dǎo)學(xué)生找出藏在計算機學(xué)科知識中的思維。本文以“答題問題”項目為例,談?wù)勗趩栴}解決中培養(yǎng)學(xué)生計算思維的一些嘗試。
一、以學(xué)生熟悉的問題為情境,啟發(fā)學(xué)生思維
“答題問題”項目嘗試引入一個生活化的概率問題,引導(dǎo)學(xué)生學(xué)習(xí)采用計算機可以處理的方式分析問題、建立模型,在解決具體問題的過程中掌握蒙特卡羅算法的基本思想。項目探究問題如下:“你在考試中遇到了一道不會做的選擇題,只好在A、B、C、D四個選項中隨便選一個。假設(shè)你選的答案是A,做完卷子后你再次思考這道題,發(fā)現(xiàn)B、C兩個選項是錯誤的,但還是無法判斷A和D兩個選項哪一個正確。那么,你會繼續(xù)堅持選A,還是將答案改成D呢?”此問題來源于學(xué)生真實的生活情境,有利于引起學(xué)生共鳴。
二、將獨立思考與合作探究相結(jié)合,引領(lǐng)學(xué)生深度思考
“改變最初選擇而答對題目的概率是多少?為什么?”學(xué)生根據(jù)自己現(xiàn)有的知識和經(jīng)驗完成初步探究,紛紛給出自己的結(jié)論并簡單解釋原因。
學(xué)生甲:“由于已經(jīng)排除掉B和C,在剩下的A和D中有一個正確選項和一個錯誤選項,所以每個選項答對的概率是1/2,因此改變與否不影響答對概率,所以我選擇不改變答案?!?/p>
學(xué)生乙:“在選擇了A之后,在剩下的三個答案中又排除了B和C,那意味著選D答對的概率更高,所以我選擇改變答案?!?/p>
以上兩種思考方式看上去都很合理,卻有完全不同的答案,到底哪種答案才正確?此環(huán)節(jié)滲透了計算思維,引導(dǎo)學(xué)生學(xué)會思考,培養(yǎng)他們養(yǎng)成思考的習(xí)慣,并以積極的心態(tài)解決問題,最終發(fā)展和完善其思維能力。
三、將復(fù)雜問題簡單化,在思維碰撞中提升學(xué)生計算思維能力
在遇到相對復(fù)雜的問題時,將問題簡單化是解決問題非常有效的方法。本案例中,教師引導(dǎo)學(xué)生換了一個學(xué)習(xí)的角度——實踐出真知,即只要把答題過程重復(fù)成百上千次,最終正確答案就會顯現(xiàn)出來。但由于我們的精力有限,重復(fù)做成百上千次模擬需要花太長時間,而計算機則可以幫助我們完成這一切。于是,教師順勢引入信息技術(shù)來推動問題探究,培養(yǎng)學(xué)生利用計算機技術(shù)分析、解決問題的能力與習(xí)慣。
師生共同對照人工答題的過程,抽象構(gòu)造出解決問題的具體數(shù)據(jù)模型,教師指導(dǎo)學(xué)生用流程圖描述問題解決的完整過程。學(xué)生作為學(xué)習(xí)的主體,在看似枯燥的問題解決過程中不斷實踐,通過計算思維能力的培養(yǎng),真正理解了蒙特卡羅算法這一概念。
四、信息技術(shù)驅(qū)動,計算思維自動化驗證求解
教師在引入蒙特卡羅算法之后,讓學(xué)生以小組為單位進(jìn)行編程,模擬多次答題的過程,計算多次答題之后的答對概率。學(xué)生在程序中設(shè)置不同的模擬次數(shù),通過修改參數(shù)來進(jìn)行不同的模擬實驗,再運行程序并記錄相關(guān)數(shù)據(jù),最后分析運行結(jié)果。在解決問題的過程中,每個學(xué)生都有不同的分工,如修改代碼、記錄數(shù)據(jù)、分析結(jié)果等。最后,基于實驗數(shù)據(jù),學(xué)生描述他們對“答題問題”的理解。從模擬結(jié)果可以看出,隨著模擬次數(shù)的增加,修改答案的答對概率不斷接近四分之三,驗證了學(xué)生乙對問題的理解,師生由此達(dá)成共識,最終解決問題。
綜上,在信息技術(shù)課堂上,教師在關(guān)注學(xué)生知識與技能學(xué)習(xí)的同時,更應(yīng)關(guān)注學(xué)生良好思維習(xí)慣的養(yǎng)成,讓抽象的計算思維落實到普通問題的解決過程中,不斷提升學(xué)生的信息素養(yǎng)。