王永婷
摘 要:本文就秦九韶算法的教學中如何既體現新課程、新理念、新課標,又注意結合舊知識,調動學生的積極性,培養學生的自主探索能力及學習興趣提出幾點思考,供交流學習。
關鍵詞:算法;秦九韶算法;教學;新課標
數學是一門思維的學科,而邏輯思維能力是數學學科能力的核心,是數學的“靈魂”。在新的課程標準中,對《算法初步》加以要求和考查,是提高學生思維素質和能力的又一重要途徑。但是,多數教師都沒有算法的教學經驗,該內容具有很大的挑戰性。
我們學校使用人教A版教材,《算法初步》一章內容的教學已經結束。還存在兩個突出的問題:一是教師不注重挖掘教材中隱含的數學思想方法,對數學邏輯思維在教材中的層次性缺乏深度的思考和認識,缺乏教學的整體規劃和安排。二是只注重數學思想方法結論的解析和證明,忽視了對數學思想方法的抽象、概括或探索推理的心智活動過程。其結果就是學生沒有體會到對問題的探究從而形成認知的過程,更未形成建立和發展分析模式、應用模式、建構模式與鑒賞模式的能力?!爸淙欢恢渌匀弧保荒軌蚺e一反三,欠缺站在巨人的肩頭去研究、分析新的問題的能力。這無疑與數學新課標的目的是相去甚遠的。
以下以秦九韶算法的教學,談談自己的幾點思考
從一道已學過的習題出發在求解過程中引概念,并且把算法思想方法滲透在高中數學課程及其有關內容中,鼓勵學生運用算法解決有關問題。
以下是教材(人教版高中《數學》必修3,第39頁“秦九韶算法”中的內容
怎樣求多項式當x=5時的值呢?
一個自然的做法是把5代入多項式,計算各項的值,然后把它們加起來,這時一共做了=10次乘法運算、5次加法運算。
1 逐漸滲透算法意識,為算法學習鋪路
對數學概念的認識,既要呈現知識,又要使學生體會人類認識數學經歷的一切,因此很多時候教材中只能看到漂亮的結論和嚴格的證明。由此產生的認識困難問題必須通過教師的教學加以解決。這就需要教師首先了解清楚所教的內容的發生發展過程,在教學過程中,有意識有目的的設置一些情境,從具體事例和事實中幫助學生發現、抽象、概括;并能加強自身的綜合素養,這就需要教師采用數學探究性課堂教學。
思考1 對計算機來說,做一次乘法運算所用的時間比做一次加法運算要長的多,所以能否找到其他的做法,減少乘法的運算次數,從而提高運算效率?
教師引導學生分析、推理:另外一種做法是先計算x2的值,然后依次計算,,的值,這樣每次都可以利用上一次計算的結果。這時,我們一共做了4次乘法運算,5次加法運算。
思考2 我們知道,這是只對求多項式當x=5時的值而言的,那么再舉一例如下:求多項式當x=2時的值?
教師引導學生解答:利用思考1總結出來的方法,每次計算利用上一次結果。所以解決辦法如下:
將原式變形如下
將x=2代入上式,從內往外依次計算
用具體實例練習,讓學生在實例中體會上述運算方法。
教師小結:上述方法為秦九韶算法。直到今天,這種算法仍是多項式求值比較先進的算法,同時介紹秦九韶——秦九韶(約1202--1261),中國南宋數學家,字道古,四川安岳人。先后在湖北,安徽,江蘇,浙江等地做官,1261年左右被貶至梅州,(今廣東梅縣),不久死于任所。他與李冶,楊輝,朱世杰并稱宋元數學四大家。早年在杭州“訪習于太史,又嘗從隱君子受數學”,1247年寫成著名的《數書九章》?!稊禃耪隆啡珪?8卷,81題,分為九大類。其最重要的數學成就----“大衍總數術”(一次同余組解法)與“正負開方術”(高次方程數值解法),使這部宋代算經在中世紀世界數學史上占有突出的地位。
2 注重將“算法”提升到“程序框圖”的層面
數學“算法”與“程序框圖”之間,并不是毫無關聯的。在數學中,我們習慣上把按照一定規則解決某一類問題的明確和有限的步驟稱為算法。而把一種用程序框、流程線及文字說明來表示算法的圖形稱為程序框圖。程序框圖揭示的是算法所描述的每一步驟,為算法的描述起到抽象概括的作用。因此,要注重將“算法”提升到“程序框圖”的層面。提高學生的數學“意識”,這對拓展學生的思維形成“程序框圖”是十分重要的。
思考1 觀察上述秦九韶算法中的n個一次式。在秦九韶算法中反復執行的步驟是什么,應該用什么結構來實現?
教師引導學生分析:觀察秦九韶算法的數學模型,計算時要用到的值。若令可以得到下面的遞推公式:
(v=1、2、3……n)
這是一個在秦九韶算法中反復執行的步驟,可以用算法邏輯結構來實現。
由秦九韶的概念得出算法步驟如下:
第一步:輸入多項式次數n,最高次項的系數和x的值。
第二步:將v的值初始化為,將i的值初始化為n-1。
第三步:輸入i次項的系數。
第四步:
第五步:判斷i是否大于或等于0,若是,則返回第三步;否則,輸出多項式的值v。
3 注重“程序框圖”寫出“程序”并進行遷移、運用
把算法轉化為計算機可執行程序,應用計算機解決相應的問題, 從而讓學生體會到雖然有時算法過程很復雜或計算很繁雜,但在計算機上運行,很快就可以獲得解決問題的結果,并且一種算法可以解決一類的問題。如果說對秦九韶算法的學習是“認識”,那么,讓學生對秦九韶算法的認識過程及運用則是“實踐”,實踐——認識——再實踐——再認識。這是認識發展的必然規律。因此,教師要精心設計訓練的平臺。將秦九韶算法的思想與學生原有知識建立起聯系,讓學生感受到中國古代數學對世界數學發展的貢獻。通過對秦九韶算法的廣泛應用、豐富其聯想的空間,懂得“來龍去脈”。教育心理學表明,學習的疑難太多,會影響到學生的信心,對于一些新的知識,其與學生已有的知識沒有內在的邏輯聯系,必須提前給予解釋,對于如何表述要給予示范。如程序框圖中使學生的思維更規范、更科學。對秦九韶算法的認識、理解,不僅來源于會寫算法,會將算法轉化成程序框圖,更來源于用程序框圖寫出計算機識別的程序。由以上程序框圖對應寫出程序:
第一步 INPUT n
INPUT
INPUT x
另一種寫法:INPUT “n,,x”;n,,x
評析: 如果不注意輸入語句的格式,則寫出的程序,計算機就不會執行或輸出錯誤的信息,這是很多學生常犯的錯誤。
第二步 LET
LET
評析:學生在寫賦值語句時常常一句給出多個變量賦值,這也是錯誤的。
第三步 WHILE
INPUT “”;
WEND
評析:根據程序框圖及前面提到的循環結構,遞推公式。引導學生選對循環語句寫出程序,問題就會迎刃而解。
以上可見,即使是教材中某一段不起眼的內容,通過對解決具體問題過程與步驟的分析。也能體會到算法的思想,理解算法的含義;通過模仿、操作、探索、經歷通過設計程序框圖表達解決問題的過程。在具體問題的解決過程中,理解程序框圖的三種基本邏輯結構:順序、條件分支、循環。經歷將具體問題的程序框圖轉化為程序語句的過程,理解幾種基本算法語句——輸入語句、輸出語句、賦值語句、條件語句、循環語句,進一步體會算法的基本思想。
把算法轉化為計算機可執行程序,應用計算機解決相應的問題, 從而讓學生體會到雖然有時算法過程很復雜或計算很繁雜,但在計算機上運行,很快就可以獲得解決問題的結果,并且一種算法可以解決一類的問題。讓人從一些機械重復、繁雜的工作中解放出來。 同時通過電腦操作,讓學生自我去探索,及時驗證自己的算法是否可行,及時獲得成就感,激發其學習興趣,也符合新課程的理念。我們擁有豐富的資源,只要認真去探索,研究,實踐,我們是可以大有作為的,這也是數學教師的重要使命。
參考文獻
[1]《普通高中數學課程標準(實驗)解讀》 江蘇教育出版社 2004年4月第1版
[2]《普通高中課程標準實驗教科書數學必修3》 人民教育出版社 2004年7月
[3]《600分專題》 中國青年出版社 2011年7月