汪慧



【摘要】計算思維可以讓學生從多元化的視角用信息技術學科思維方式理解信息世界,進一步推動信息技術課程的改革與重構。根據python程序設計課程的特點,將python程序設計的理論與計算思維的原理有機結合起來,并把計算思維中一系列方法運用到課堂教學的各個環節中,可以有效地培養學生的計算思維,提高學生的信息素養。
【關鍵詞】計算思維;python;程序設計
新課標指出:“計算思維是指個體運用計算機科學領域的思想方法,在形成問題解決方案的過程中產生的一系列思維活動。具備計算思維的學生,在信息活動中能夠采用計算機可以處理的方式界定問題,抽象特征,建立結構模型,合理組織數據;通過判斷、分析與綜合各種信息資源,運用合理的算法形成解決問題的方案;總結利用計算機解決問題的過程與方法,并遷移到與之相關的其他問題解決中。”[1]這里特別突出了計算思維的重要性并對其提出了具體要求。初中信息技術課程中該如何通過編程教學體現計算思維呢?我們以華中科技大學出版社初中信息技術八年級“Python選擇結構”為例進行了初步探討。
【基于計算思維培養的教學設計案例】
Kuster等理解的計算機思維內涵是數據分析、算法設計與實現,以及數學建模的一個綜合體。這個綜合體不是一蹴而就的,而是一個循序漸進的過程,需要有針對性地對課堂教學加以培養。我們設計了一節以計算思維的培養為導向的教學案例——身體質量指數BMI。
本節課的教學流程大致分為以下幾個階段。
一、明確任務
任務:編寫一個根據體重和身高計算BMI值的程序,并同時輸出國際和國內的BMI指標建議值。
學生活動一:分組完成表格1,了解并記錄本組成員的體重、身高。閱讀資料了解BMI的基本指標。
了解BMI的基本指標。BMI通過人體體重和身高兩個數值獲得相對客觀的參數,并用這個參數所處范圍衡量身體質量。BMI的定義如下:
BMI=體重(kg)/身高的平方(m2)
例如:一個人身高1.78米,體重78公斤,他的BMI值為23.67。
BMI值可以客觀地衡量個人的肥胖程度或者說健康程度。世界衛生組織(WHO)根據對全球人口體重的統計認為,BMI值低于18.5kg/m2時屬于“過輕”,表明個體可能營養不良或飲食無法保障;BMI值高于25m2時屬于“過重”。
二、分析問題,建立數學模型
學生活動二:將文字材料分析成能用計算機處理的數學問題,并列出IPO描述。
輸入:身高和體重值。
處理:計算BMI值,并根據BMI指標分類找到合適分類。
輸出:打印指標分類信息。
計算思維:通過輸入、處理、輸出對問題進行分析,化難為易,將一個衡量個人健康程度的問題分解成簡單的計算與數據對比問題,從而使學生找到解決問題的思路,建立數學模型。
三、確定數據結構和算法
采用if-elif-else多分支結構對BMI數值按照不同區間范圍進行分類。
學生活動三:了解三種分支語句,從單分支語句開始判斷,找出最合適的判斷語句,根據判斷語句,分析BMI區間值判斷個人健康程度,思考表2國際標準、國內標準如何同步。
判斷表2中的4種情況,是并列的關系,可以使用多分支語if -elif-else來寫代碼。
計算思維:計算思維是用來解答問題的,它將實際生活中的問題以抽象化和程序化的形式表示出來。在程序設計課程的教學過程中,要注意培養學生依據已有知識體系提出問題、解決問題的能力[2]。本例采用問題分解法,先將問題分解成國際標準和國內標準兩項,再將國際標準中4種情況的關系找出來,轉化成4個小問題,找出合適的語句,將一個復雜問題分解成幾個問題,再細分成一個個具體的小問題,用學生已有的知識體系解決復雜問題。
四、算法實現
學生活動四:根據數學模型,將任務適當分解為子任務,根據算法分析選擇多分支語if-elif-else書寫代碼。
計算思維:①分解——分解是對整體任務進行合理的功能模塊劃分,將總任務分解成可以單獨解決、獨立開發的子任務,減少一次要處理的任務負荷,使復雜的問題得到較容易的解決。在算法實現的過程中采用分解思維,將總任務分解為兩個子任務:國際標準、國內標準。找出4種情況的關系,選擇合適語句寫出代碼。②算法思維——算法是一系列的計算步驟,用來將輸入數據轉換成輸出結果,是計算機問題求解中非常重要的步驟,在分析清楚問題后,需要通過設計算法把問題的數學模型或處理需求轉化為使用計算機解題步驟,然后將算法實現為程序,最后在計算機上運行,從而得到問題的解。把算法理解透徹,成為習慣思維,自然而然地就成為計算思維。③評估——確保當前的解決方案是最優的。比較實例代碼BMIv1和實例代碼BMIv2可以看到if語句的運用主要與程序編寫者對問題的理解及算法設計有關,采用一組if語句將兩套BMI指標融合在一起,實際上是算法的改變。程序的簡潔性和可讀性都比更少的代碼行數重要。這里,評估BMIv1的方式編寫程序為最優方案。
五、程序調試
學生活動五:運行程序,搜集數據,填寫表格1《學生健康情況》,并對學生健康情況進行分析,找出其規律。
計算思維:學生通過算法實現程序,并由程序的自動執行來搜集數據。
本教學活動設計緊緊圍繞計算思維的操作性定義和編程的四個基本步驟展開,從當前最受關注的健康問題說起,引導學生思考如何利用計算機來解決問題。通過主動、有意識地將計算思維培養融入教學的各個環節,不僅有利于學生理解程序設計的方式和方法,而且有利于學生運用計算機學科的獨特思維來求解專業問題,培養學生面向未來發展的能力。只有當計算思維成為一種本質的、所有人都具備的思維方式,使計算思維成為人類活動的整體,才能激發人們對科學探索的興趣,使計算思維成為一種常識。作為提升學生信息素養的中小學信息技術課程,也應該承擔起計算思維培養的重任[3]。
【參考文獻】
[1]教育部基礎教育課程教材專家工作委員會,普通高中課程標準修訂組.普通高中信息技術課程標準(2017年版)[M].北京:人民教育出版社,2018.
[2]丁金鳳,李英梅,徐建山,等.基于計算思維的程序設計類課程教學實踐[J].計算機教育,2012(15):65-68.
[3]王榮良.計算思維對中小學信息技術課程的影響初探[J].中國教育技術裝備,2012(27).