李峰偉
算法是數學及其應用的重要組成部分,是計算科學的重要基礎。新的高中數學課程標準中“算法初步”被列入必修3的內容。算法思想已經成為現代人應具備的一種數學素養。
一、理解算法的思想
機械地按照某種確定的步驟行事,通過一系列小的簡單計算操作完成復雜計算的過程被人們稱為“算法過程”。人很容易完成的基本計算就是簡單的一位數加、減、乘和進位、借位等,復雜計算過程實際上都是通過這些操作,按照一定的工作秩序與步驟組合完成的。如:人們在計算過程中,先乘除,后加減,從內到外去括號等規則,都是按部就班必須遵守的算法。一個多位數的乘法就是通過多次使用一位數乘法、一位數加法和進位計算規則實現的。可以看做是一個算法過程。我國古代數學就有以算法為主要特征體現算法的,其中最具有代表性的就是《九章算術》。《九章算術》的主要特點就是內容的算法化,書中一般先提出問題,給出答案,再給出“術”作為一類問題的共同解法,以后可以用它來解決其他問題,得出了方術、割圓術、方程術、正負術等著名算法。
新課程標準中是這樣描述算法定義的:一般而言,對一類問題的機械的、統一的求解方法稱為算法,也即從廣義上講,人們把進行某一工作的方法和步驟稱為算法。如電器使用說明書就是使用電器的算法;菜譜就是做菜的算法,課程表是上課的算法……等等。從狹義上講,就中學階段,是針對計算機能實現的算法。
二、掌握算法的內容
算法是數學及其應用的重要組成部分,中學數學的算法內容是較基本的算法初步,算法常用表示的方法有:自然語言表示法、流程圖表示法、偽代碼表示法。
1.自然語言表示法:就是用中文或者是英文來說明該做什么,只要條理清晰、易懂就可以了。但它比較麻煩且容易產生歧義。
2.流程圖表示法:結構清晰,一般由順序、選擇和循環三種本結構組成。下面看看這三種基本結構。
(1)順序結構
順序結構的操作是按照書寫順序執行的。
(2)選擇結構
選擇結構是以條件的判斷為起始點,根據條件是否成立而決定執行哪一個處理步驟。
(3)循環結構
循環結構是指在算法設計中,從某處開始有規律地反復執行某一處理步驟,這個處理步驟稱為循環體。循環體的執行次數由一個控制循環條件決定的,不滿足條件反復做,滿足則停止。
3.偽代碼表示法:用介于自然語言和計算機語言之間的一種文字和符號來描述算法。它的表示形式比較自由。偽代碼沒有一個統一的語法,只要寫出來自己和別人能看懂就行。偽代碼包括賦值語句、輸入語句、輸出語句、條件語句、循環語句。每種語句在算法中具有各自的功能。
三、體會算法的教育價值
算法的教育價值在以下幾個方面:
1.有利于培養學生的思維能力
算法是思維的條理化、邏輯化。算法所體現出來的邏輯化特點被有些學者看成是邏輯學繼形式邏輯和數理邏輯之后發展的第三個階段。因此,培養邏輯思維能力,不僅可以通過幾何論證,代數運算等手段來進行,還可以通過算法設計的學習來達到。
2.有利于培養學生理性精神和實踐能力
算法既重視“算則”,更重視“算理”。“算理”是“算則”的基礎,“算則”是“算理”的表現。因而,算法有利于培養學生理性精神和實踐能力,是實施探究性學習的良好素材。
3.算法內容反映了時代的特點,同時也是中國數學課程內容的新特色。
四、關于算法教學的建議
1.要準確理解課標
算法教學必須通過實例進行,使學生在解決具體問題的過程中學習一些基本邏輯結構和語句,體會算法的思想,提高邏輯思維能力,要求學生將解決問題的過程整理成流程框圖,并將流程框圖翻譯成計算機語言,但不能將這些過程看成是學習程序語言和程序設計。
2.處理好重點和難點
流程圖的教學應貫穿算法教學的始終。要通過具體案例循序漸進地講解流程框圖的設計,特別是循環結構的框圖表示,要以掌握一定的循環語言為基礎。在學習循環語句之前,準確、簡明地畫出循環結構的框圖,既是教學重點、難點,又是算法學習的關鍵。
3.算法語句的教學要與學生已掌握的信息技術知識程度相適應
中學生學習的算法,一般要求是能轉變成計算機能夠理解的程序語言和能在計算機上實現的程序,還要根據學生已掌握的信息技術基礎知識的程序,靈活處理教學內容。算法語句的教學,既不能等同于學習程序語言和程序設計,又要達到基本的教學要求。教學中能讓學生上機操作體驗算法思想也是十分必要的。