文|郭啟化
算法設計初步是信息技術新課標選修Ⅱ模塊1的內容。在內容編排上體現了高中新課改精神,逐漸改變學生對于信息技術的學習習慣,變單純地學習信息技術方法為研究性學習,同時更加注重學生獨立思考、創(chuàng)新意識的培養(yǎng)。
但由于算法具有一定的抽象性,且高一年級學生并未經歷過系統地學習,又是第一次接觸到信息技術這一學科,所以學習起來會有一定的難度。作為算法的入門篇——算法的描述此時就顯得尤為重要。本人根據自己平時教學的經歷,結合對于新課標學習的心得,做了以下幾個方面的思考。
從算法的概念上理解,算法可以簡單理解為在有限步驟內解決問題的方法,所以算法描述方法的教學也不應當偏離這一主題。
因為高一年級學生剛剛在數學課上學習過算法初步,所以在設計問題情景時可以適當聯系數學學科,舉一些學生易于理解的例子,比如“快速計算1+2+……+100的結果”這個問題,剛看到題目時,很多學生就脫口說出答案“5050”,這使教學很自然地過渡到問題的求解方法,為后面引出課題做好伏筆。學生探究環(huán)節(jié)可以分組使用“自然語言描述、流程圖描述、偽代碼描述”,讓學生在學習自然語言描述方法的同時,發(fā)現這一描述方法的不足,為后續(xù)學習流程圖描述方法做好鋪墊。
在算法初步模塊教學中應當充分摸清學生的認知規(guī)律和基礎現狀,然后從一個個具體小問題著手,循序漸進地發(fā)展學生的有條理的邏輯思維能力。
算法具有一定的抽象性,教師應當充分考慮學生的認知規(guī)律,組織教學過程中,盡量選取最簡單又不乏典型性的案例作為模型,本著能簡單就不復雜的原則設計教學案例。
算法的描述方法這部分在組織教學時可以換位思考,站在學生的思維習慣角度去看待問題,舉一些具體問題作為研究內容,可以用生活中的相關例子(如大家都熟知的華羅庚統籌算法提到的燒開水泡茶的例子,拿茶壺接水—放到爐子上燒開水—洗茶葉茶杯—水開了沖茶葉……)來畫出流程圖,再聯系數學課上剛學過的解數學題的流程圖。
在實際教學過程中我還發(fā)現,很多同學沒有處理好“學習知識”和“解決問題”的關系。所以在教學中應當把重點放在培養(yǎng)解決問題的能力上。課堂教學中以解決日常生活所遇到的實際問題為目標,而這些實際問題應具有真實性,組織學生在解決問題過程中做到學有所用。這一過程中教師也就做到了“授之以漁”。
現階段常用的算法描述方法可分為三種:自然語言、流程圖、偽代碼。每種方法各有千秋,很難說哪種最好。算法初步這一模塊中語言的選擇,可以根據教學目的、現有條件(學生基礎、教學軟硬件環(huán)境)等具體情況進行選擇,不能簡單說哪種語言好或不好,只能說哪種更適合學生,以量體裁衣的理念選擇一種適合本校學生思維特點和基礎的語言環(huán)境,才能取得最佳教學效果。
算法的學習能培養(yǎng)學生的創(chuàng)新思維能力以及邏輯推理能力,而算法的描述應用又可以培養(yǎng)學生的知識轉化能力,可以充分發(fā)揮學生的想象力和創(chuàng)造性。算法的描述這一環(huán)節(jié)學習效果將直接決定學生對接下來算法設計的掌握,因此我們在教學中應當積極探索更加有效的手段和方法,為學生打下堅實的基礎。