【摘要】算法在我國古代取得舉世矚目的成績,在計算機科學迅猛發展的背景下,算法教學進入高中數學的必修課程。本文對目前高中的算法教學現狀進行分析,探討了目前算法教學中存在的主要問題,對在新課程中如何正確進行算法的教學提出了4個策略,以期為在高中算法教學方面探索行之有效的教學策略。
【關鍵詞】高中數學新課程高中數學算法算法教學
【中圖分類號】G633.6 【文獻標識碼】A 【文章編號】2095-3089(2014)06-0147-01
算法教學在我國自古就存在,古代數學的算法是以解決問題為核心,計算機技術的出現對算法提出了更高的要求。為適應時代發展的需要,國家于2003年3月出臺的《普通高中數學課程標準(實驗)》在必修內容“數學 3”中,對“算法初步”提出了明確要求,因此“算法初步”的教學成為數學教科研的一個新的關注點。筆者在在研讀《高中數學新課程標準(實驗)》的基礎上,廣泛閱讀了國內外對于算法知識教與學的相關文獻資料,并結合自己擁有的實踐經驗,從以下幾個方面對在新課程標準下如何正確進行算法教學進行探討和研究,希望通過自己的努力在這方面探索一種行之有效的教學策略。
1.關于算法課程教學設計
全面把握新課程中算法的教學目標,應從以下從三個方面著手一是基礎知識、基本技能目標,用自然語言描述算法,在設計算法流程圖表達解決問題的過程中理解算法流程圖的三種基本邏輯結構,在將具體問題的算法流程圖轉化為程序語句的過程中理解五種基本算法語句;二是能力、思想、意識目標,在問題解決中體會算法的思想和了解算法的含義,在分析具體問題、抽象出算法的過程中培養抽象概括能力、語言表達能力和邏輯思維能力。三是情感、態度、價值觀目標,理解數學與現實世界的關系、數學與計算機技術的關系,將許多復雜問題的算法寫成程序,并交給計算機完成,從而提高學生學習數學的興趣。
2.高中算法教學策略
數學新課程標準制定以來,專家學者做了大量有關算法教學的研究,也提出了很多在教學中游泳的意見。韓裕娜等開展了如何進行算法教學及其在教學中應注意哪些方面研究,胡學平等提出“算法初步”教學中應注意的問題,宋寶和等通過實驗對算法的教學策略進行探討,根據實驗及其結果而提出一些教學策略,熊芹對高中數學“算法初步教學提出了 4 點教學策略,王惠春從信息技術數學課程相結合的角度出發,對“算法初步”的教學中存在的問題進行分析研究,薛梅從文獻研究和案例分析的角度進行解析,側重于探討算法教學中的四個焦點問題。這些研究大多在算法的歷史、對現代數學的意義、當前教學的現狀研究的較多,而對課堂教學模式研究相對少一些,特別是目前還沒有從目標分類的角度進行過相關的教學策略研究。
3.新課程中算法的教學策略
3.1將培養算法思想貫穿整個數學教學中
新課程強調算法既要重視“算則”,要重視“算理”,因為對于算法的一步一步的程序化步驟,更重要的應理解這些步驟的依據——算理,即體現算法的思想。算法思想的培養實際上就是強調學生思維的條理化、嚴謹化、邏輯化,根據高中生思維能力特點,邏輯思維能力雖然已經形成,但是有待于進一步地完善和發展。算法對問題的處理方式實質上是將人的思維過程處理成計算機能夠一步一步執行的步驟,進而轉化為能夠一步一步執行的程序。算法思想體現在分步推進思想、邏輯選擇思想、循環思想、遞推思想等,由于學生以往處理問題的習慣經驗影響,對這些思想理解有一個過程。“算法初步”安排了解 12 個課時,通過這12 課時要求學生形成成熟的算法思想是不可能的,也是不現實的。因此,算法思想培養應貫穿在后繼的課堂教學中。
3.2 加強程序框圖的演示教學
程序框圖能夠直觀、簡捷、清淅表示算法的整體結構及其邏輯關系,因此程序框圖是算法語言表述的一種重要形式,并為程序的編寫提供基礎。程序框圖設計教學就是要求學生把一些簡單問題的解決方案用流程圖表示出來。通過流程圖的學習,培養學生條理化、層次化邏輯思維能力。如何將一個問題的解決方案轉化為嚴謹條理的程序框圖是算法教學的重點,應該讓學生通過較多的實例來充分體驗這種轉化的過程。數學課與技術課應當相互協調,數學課中應當著重加強對程序框圖的教學,使學生充分認識計算機解決問題與人類解決問題的不同。減少算法語句教學,算法語句的實現應以演示為主,上機操作為輔。雖然算法語句的教學不應作為數學的重點,但為了使學生能更好地體會計算機解題過程,教師應當經常在計算機上演示一些經典程序。
3.3 案例選取要體現基礎性、趣味性和發展性
基礎性表明所選取的案例本身的算理并不難,但要蘊含豐富的算法思想,不要偏難偏怪。案例盡量貼近學生學習的“最近發展區”,讓學生能夠從中學習算法的基本思想、基本結構和基本語句,尤其是算法程序思想的理解。
例如:畫出函數的流程圖(如圖1),算法步驟如下:
第一步:輸入x;
第二步:若x<0,則y=-2,轉到第五步,否則轉到下一步;
第三步:若x=0,則y=0,轉到第五步,否則轉到下一步;
第四步:若y=2,轉到第五步;
第五步:輸出。
圖1 程序框架圖
算法案例選取宜精不宜多,宜簡不宜難。如最大公約數、菲波拉契數列、質數的求解等較為簡單的例子,讓學生自己設計這些例子的程序框圖,提高學生邏輯思維能力,有條理地表達自己的解題思路,對于較為復雜的算法思想不應當給予太多關注,以免學生產生畏難情緒。在案例選取時,應盡量貼近學生生活,有一定的趣味性,有利于學生學習算法的積極性,并激發探究算法知識的興趣。
3.4算法教學與計算機適度整合
在算法教學過程中鼓勵學生盡可能地上機嘗試,因此,在算法教學中還涉及程序語言教學。算法教學與程序語言教學是密切相聯系,但是它們存在區別:算法教學重點在于體現算法的思想——程序化的思想,培養學生的邏輯思維能力和思維的條理性;而程序語言教學是計算機語言教學,目的在于讓學生學會編寫程序。算法教學是程序語言教學的基礎,而程序語言教學是算法教學的延續。在教學活動中,在學習了三種基本的邏輯結構后,結合具體的案例,學習相關的基本的算法語句,并與相應的程序框圖比較,把程序框圖轉化為算法語句。由于算法的操作性的特點,在算法教學過程中,讓學生動手實踐,在解決具體問題中學習基本邏輯結構和算法語句,適當安排學生上機操作,體會算法設計過程的完整性,可以及時知道自己設計的算法的可行性和有效性,起到激發學生的學習興趣和提高學習效果的作用。
參考文獻:
[1]陳國芳.高中數學新課程中算法教學現狀的調查與分析. 東北師范大學, 2006: 122-124.
[2]周恩超.高中新課程“算法初步”教學情況的調查研究. 數學教學, 2009, (3): 34-37.
[3]王恵春.對《算法初步》教學的調查研究.數學教學,2009, (9):19-21.
[4]俞素玲.《算法初步》教學設計案例.數學通訊, 2008,(5):13-17.