費珊博


摘 要:《九章算術》中的兩鼠穿墻問題的解法:逐一計算、盈不足術、解方程組法、等比數列求和、計算機編程語言(條件結構、循環結構),兩鼠穿墻問題從古至今的解法就是一部活生生的數學發展史。
關鍵詞:《九章算術》;兩鼠穿墻;盈不足術;解方程組;等比數列求和;計算機編程
古往今來,數學與人類生產生活密不可分,數學是社會進步的產物,也是推動社會發展的動力,可以說沒有數學的發展,就不會有今天高度發展的文明社會。近幾年高考數學題中,由古代數學著作改編的題目屢見不鮮,我們也應該在教學活動中滲透數學知識的古往今來,前世今生。不僅有助于學生在審題和解題中領略到古代數學的博大精深,也能讓學生認識到中國古代數學的輝煌成就,激發學生的民族自信心和自豪感。
筆者對《九章算術》中兩鼠穿墻問題從古至今解題方法有過粗略的研究,并且設計了一堂課與同學們共同探討兩鼠穿墻問題用逐一計算、盈不足術、解方程組法、等比數列求和及計算機編程語言(條件結構、循環結構)等方法解題的過程,領略不同時代解題的妙處和局限性,以及改進方法的必要性。解題方法的進步折射出時代的發展、科技的進步,讓同學們感受到方法的進步、科技的進步給人類生產生活帶來的便捷。
以下是人教版必修2.5等比數列的前n項和(第一課時)中的某個教學片斷:
師:(新課引入)同學們,我們的老祖宗在幾百年前甚至幾千年前就給我們留下了許許多多的高考數學題目,這些題目經命題專家精細加工,再滲透現代的數學思想方法,編制出精妙絕倫的當今數學高考題。今天我們一起來研究數學著作《九章算術》中的一個經典數學問題。
生:(迫不及待)老師,是什么問題?
師:今有垣厚五尺,兩鼠對穿,大鼠日一尺,小鼠亦日一尺,大鼠日自倍,小鼠日自半,問幾何日相逢?各穿幾何?我們把這個問題取名為“兩鼠穿墻”問題。
生1:兩只老鼠第一天打洞1+1=2尺,第二天打洞,2+0.5=2.5尺,兩天打洞共4.5尺,第三天只要再打洞0.5尺即可,所以第三天就可以把墻打穿。
師:哪位同學能夠精確到幾分之幾天呢?
生2:(補充)第三天兩鼠的速度和為4+0.25=4.25,第三天只用了天,總共用了天。
師:很好,我們的古人就是這么思考問題的。但是隨著社會的發展,這種解法越來越不能滿足生產、生活當中產生的數學問題的解答。因此古人總結出了解決此類問題的一個機械的算法公式,收錄在《九章算術》里面。
2天穿墻后差0.5尺,3天穿墻后多3.75尺,古人利用公式得到兩只老鼠相遇的天數:天。
生:(疑惑不解)老師,這個公式是什么意思?
師:我們的古人那時侯還沒有設參數,解方程的思想。所以他們通過長時間的積累總結出了很多的算法公式,用以解決日常生活中的數學問題。解決“兩鼠穿墻”問題的公式是“盈不足術”當中的一個算法公式。
生3:老師,什么叫做“盈不足術”?
(給學生簡單介紹一下《九章算術》中收錄的內容)《九章算術》共收錄有246個數學問題,分為九章,主要內容有:第一章:“方田”,主要講述平面幾何圖形面積的計算方法;第二章:“粟米”,主要講述谷物糧食的按比例折算;第三章:“衰分”,主要講述比例分配問題;第四章:“少廣”,主要講述已知面積、體積,反求其邊長和徑長的問題;第五章:”商功”,主要講述土石工程、體積計算;第六章“:均輸”,主要講述合理攤派賦稅;第七章:”盈不足”,即雙設法,主要講述“盈虧問題”;第八章:“方程”,主要講述一次方程問題(這里的方程不是我們現在學的方程,古時候人們用算籌來布置方程,主要思想是加減消元法);第九章:勾股,主要是對勾股數的研究。簡單地說古人把生產生活中遇到的數學問題分為九類,解決每一類問題都要套用書中給出的公式,我們上面的解法就套用了“盈不足”里面的一個公式。那么這個公式究竟是什么意思呢?
師:初中數學里我們學習了一元一次方程、二元一次方程。方程的思想源于13世紀,意大利大數學家斐波那契提出的單設法、雙設法。斐波那契的雙設法就是盈不足術。中國的盈不足術是通過阿拉伯傳到西方的,比西方的雙設法整整早了1000多年。下面我們就用方程的思想來介紹一下盈不足術。我們先來看另外一個簡單的問題
引例:x人出y元購物,每人出a錢則盈(多)m錢,每人出b錢則虧(少)n錢,問:每人出多少錢正好?(用a、b、m、n表示)
(學生興趣十足,躍躍欲試)
生:可以列出方程組:
∴每人出錢
師:以上的公式就是古人推出的盈不足術公式(當然古人可不是用解方程的思想推出的),兩鼠穿墻問題我們就可以看成一個盈不足問題,請同學們回答這里的a,m,b,n分別指什么?
生4:a指穿墻3天,m指多穿3.75米,b指穿墻2天,n指少穿0.5米,穿墻的天數為。
師:請同學們把穿墻天數求出來。
生5:x,y,x指兩鼠的平均速度,y指距離,
這種推導的思想就是“盈不足術”的思想方法。在沒有計算機的古代,“盈不足術”已是非常先進的算法工具,西方人甚至把它稱為“黃金方法”。它避開了每天變化的速度,把含有變量的數學問題轉化為常量的數學問題。
我們再用方程的思想求解兩鼠穿墻問題就不再那么難了。設兩鼠的平均速度x(變量轉化為常量是解題的精華),穿墻的距離和為y,2天差0.5尺,3天多3.75尺,列方程組為,穿墻的天數為,
,
師:接下來我們很容易就能解決第二個問題了,兩只老鼠分別穿墻幾尺呢?
生6:大鼠穿墻:尺,小鼠穿墻:尺。
師:同學們,方程的求解經歷了漫長的歷史發展過程,我們的古人盡管在《九章算術》成書時代就掌握了負數概念、分數運算法則、以及移項的方法,但由于代數符號的缺失,方程的求解體系無法形成。直到韋達創立符號代數之后,方程的現代解法才變得可能。盈不足術和解方程組的思想雖然先進,但是會耗費我們大量的時間和人工,雖然已知公式,已知方法,但是計算過程非常繁雜,計算結果難免會出現這樣那樣的錯誤。
接下來我們就來學習“兩鼠穿墻”問題的現代解法。(學習等比數列求和公式)
師:同學們,我們學習了等比數列的求和公式后,再來解決“兩鼠穿墻”問題是不是更加方便了呢?
生7:n天穿墻距離為
師:同學們,這個方法又會給我們帶來什么局限性呢?
生8:n是整數,不能夠精確到幾分之幾天。
師:很好,我們能用我們所學的知識求出時,n的值嗎?
生9:用零點存在性定理解決。
師:接下來我們就用零點存在性定理解決。
設
∴s(2)·s(3)<0∴存在x0∈(2,3)使得s(x0)=0
取
,使得時
依次類推,只要給出一個精確度,就可以求出:時x0的值。
師:利用數列求和公式解決就是一個非常簡潔的數學問題,特別是求n的整數值。局限性仍然是計算量特別大的問題。
師:《九章算術》所創立的機械算法體系顯示出比西方歐幾里得幾何學更高的水準。并將其擴展到其它領域,其算法體系至今仍推動計算機的發展與應用。特別是《九章算術》中的循環結構思想對無窮數的推衍和論證起到了至關重要的作用,也對計算機算法史影響深遠。我們也可以利用計算機編程語言編寫兩鼠穿墻問題。
師:同學們:我們可以輸入任一個T(表示墻的厚度),利用方法一的編程語言,計算機直接會得出精確的穿墻天數;我們也可以輸入精確度m和初始值a,b,利用方法二的編程語言,計算機就會幫我們算出幾乎精確(只要精確度夠小)的穿墻天數。這大大減少了我們的計算過程,降低了人力物力成本。當然由于老師的水平有限,這兩個程序不是最完美的,學過編程的同學可以去嘗試編寫一個更加簡潔完美的程序語言來解決此類問題。
中國古代有很多跟數學相關的著作,例如《九章算術》、《周髀算經》、《數學九章》、《孫子算經》等,這都是有可能提取出高考數學試題素材的書籍。國外的書籍中,古希臘數學家歐幾里得的《幾何原本》也是可能的出題素材。另一方面,兩鼠穿墻問題從古至今的解法就是一部活生生的數學發展史。這節課有助于學生了解數學文化、了解數學的發展史。
結束語
數學的發展歷史是曲折的,數學文化的內涵不僅僅是它本身的知識,更重要的是它的歷史進程,以及在歷史進程中的重要地位。數學作為一門科學,它不是任何一個時代、任何一個民族的單獨產物,而是若干個年代,許多個民族的共同產物。數學的每一次發展都是對之前理論體系的的提煉與升華,前人思考問題的方式給了我們解決新問題的靈感和方向。適當將數學的歷史引入課堂,可以豐富學生的數學知識和學生的數學視野。5G的推廣、人工智能的應用,航天事業的發展、宇宙的探秘等未來科技行業需要更多優秀的數學家參與其中,未來的社會將會更加發達,人類將涌現更多更優秀的數學家,我們的學生也將會是其中一員。
參考文獻
[1]《九章算術》第七章“盈不足”