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