【摘 要】算法教學的重點是算法的三種基本邏輯結構,即順序結構、條件結構、循環結構及對應的程序框圖。其中的難點又是循環結構中的兩種類型,問題情境的引入能更好地幫助學生對這一重難點的掌握。
【關鍵詞】情境教學 算法初步 基本邏輯結構 教學設計
算法初步是高中課程中的新內容,對于這一全新的內容,給全體數學教師帶來了新的挑戰,也激發了大家極大的興趣,而算法教學的重點是算法的三種基本邏輯結構,即順序結構、條件結構、循環結構及對應的程序框圖。其中的難點又是循環結構中的兩種類型,問題情境的引入能更好地幫助學生對這一重難點的掌握。
基于這一考慮,對三種基本邏輯結構中的循環結構的教學,我從以下幾個方面進行設計:
一、創設合理問題情境,恰當引入課題
問題情境的作用不僅是激發學生的學習興趣,更重要的是,一個好的問題情境可以是整節課的資源庫。因為前一天剛進行了一次數學測驗,所以采用了計算班級的平均分來引入。平均分的計算方法大家都非常熟悉。問題是怎樣設計一個適當的算法來完成這個目的。而平均分的計算需要先計算出每一個學生的成績的總和,即重復的進行加法運算。這就需要用到基本邏輯結構中的循環結構。并給出循環結構的概念。
二、合理利用例題,精心設計問題序列,逐步深化理解概念
借助上一問題情境,使得同學們明白之所以要用循環結構來解決一些問題,是因為我們經常要重復做一些事情。從而進入課本中的例題。
例6 設計一個計算1+2+3+…+100的值的算法,并畫出程序框圖。
與前一問題相似,首先引導學生判斷是否有重復?即完成此問題需先找出3個關鍵地方,
1. 什么時候開始?
2. 重復做什么?
3. 什么時候結束?
并讓學生有針對性地回答上述問題:1. 從1開始,2. 重復做加法運算,3. 到100時結束。同時給出變量初始值(什么時候開始)、循環體(重復做什么)、循環控制條件(什么時候結束)等概念。使學生初步了解循環結構的三要素。理清算理后,初始化變量,并確定循環體步驟。而在確定循環體時,如何能夠有效地保證循環,一個關鍵的地方是設計累加器,在表示時利用計算機特有的替換方式,如I=I+1,或S=S+x;再加上設置循環終止條件,就可輕松寫出算法
第一步,令i=1,s=0
第三步,s=s+i,i=i+1
第四步,判斷i>100是否成立,是則輸出s,算法結束。否則執行第二步。
并依照算法步驟畫出程序框圖。
此為先執行后判斷直到滿足條件后終止循環,稱為直到型循環結構。
也可先判斷后執行,當條件滿足是執行循環體,否則終止循環。即為當型循環結構。對應的算法步驟為:
第一步,令i=1,s=0
第二步,判斷i≤100是否成立,是執行第三步,否則輸出s,算法結束。
第三步,s=s+i,i=i+1
同樣依照此算法步驟畫出程序框圖。
經過對這一問題的研究后,學生對循環結構中的當型循環結構和直到型循環結構已經有了初步的了解,但對本課的這一難點:如何區分當型和直到型循環結構?掌握的并不深刻。針對這個問題,我設置了一個問題,就是如何在下列四個框圖中,挑選出直到型循環結構和當型循環結構。
學生討論得很激烈,充分暴露出了問題,經過同學互相點評以及教師的適時引導,學生慢慢掌握了這兩種循環結構的特征。即:直到型循環結構是先執行循環體,后對循環控制條件進行測試,直到條件成立,方可退出循環;而當型循環結構是先對循環控制條件進行測試,后執行循環體,當條件成立時,執行循環。
三、回到問題情境,再次深化理解概念,突出重點突破難點
課上到這里,學生已經基本掌握了循環結構的概念及兩種循環結構的特征。所以,回到本課剛開始時的問題情境,再次深化本課的重點和難點。
經過前面的學習,因為學生已經基本掌握了本課的重點和難點。那么此問題的完成可讓學生在老師的引導下自主完成并讓學生用老師事先準備的卡片將畫好的程序框圖展現在黑板上,暴露學生的錯誤,主要的錯誤類型有
(1)循環結構書寫不正確。
(2)變量初始值設置不正確
(3)循環體運行順序不正確
(4)循環控制條件不正確
經過學生之間的互評,提供出多種修改方案,在這一過程中學生自然能體會出循環結構三要素之間的相互影響,難點得以突破。學生通過總結也完善了自己的認知結構,對該部分知識有了更深地體會。
總之,本節課我希望學生能在自主學習,自主探究的過程中總結兩種循環結構的特征;在解決問題的過程當中通過互評、修改來突破循環結構三要素對循環結構的影響這一教學難點。