邊孟穎 鄭茹 傅海倫
在中小學(xué)數(shù)學(xué)教學(xué)、培訓(xùn)以及研修學(xué)習(xí)中,不少教師都提到中國數(shù)學(xué)史的正負(fù)數(shù)的問題,筆者對(duì)此很有興趣,也感到此內(nèi)容十分重要,但有關(guān)這方面的介紹也不盡相同,這給我們的數(shù)學(xué)教學(xué)與研究帶有一定的不便。因此,本文在查閱相關(guān)文獻(xiàn)的基礎(chǔ)上,給出一些數(shù)學(xué)史料,使大家對(duì)此有一個(gè)更清楚、更準(zhǔn)確的認(rèn)識(shí)。同時(shí),也提出一點(diǎn)自己的認(rèn)識(shí)和理解,希望與同行作更進(jìn)一步的交流,也權(quán)當(dāng)對(duì)數(shù)學(xué)史學(xué)習(xí)與應(yīng)用的一點(diǎn)體會(huì)。
1關(guān)于中國數(shù)學(xué)史中的正負(fù)數(shù)
中國是世界上最早引入負(fù)數(shù)并給出正負(fù)數(shù)運(yùn)算法則的國家??墒蔷烤箲?yīng)當(dāng)怎樣認(rèn)識(shí)正負(fù)數(shù),卻需要搞清楚。實(shí)事上,在我國最早的數(shù)學(xué)經(jīng)典——《九章算術(shù)》中“方程”章已用到正負(fù)術(shù)。《九章算術(shù)》確定了中國古代數(shù)學(xué)的框架、內(nèi)容、形式、風(fēng)格和思想方法的特點(diǎn)。全書共分九章,有90余條抽象性算法、公式,246道例題及其解法,基本上采取算法統(tǒng)率應(yīng)用問題的形式[1],包括豐富的算術(shù)、代數(shù)和幾何內(nèi)容?!毒耪滤阈g(shù)》是以計(jì)算為中心以解決實(shí)際問題為目的的算法體系,在結(jié)構(gòu)上總體可分為:“問”、“答”、“術(shù)”。如果幾個(gè)相連的題的解法完全相同,就把“術(shù)”放在這一類題目的最后一題解答之后,作為一般性的算法。因此,《九章算術(shù)》并不是所謂的“問題集”,而是注重計(jì)算的方法和過程,以“術(shù)”文統(tǒng)率應(yīng)用問題的算法體系。這一點(diǎn)非常重要,是理解包括正負(fù)術(shù)在內(nèi)的我國傳統(tǒng)數(shù)學(xué)構(gòu)造性與機(jī)械化思想特點(diǎn)的基礎(chǔ)和前提。
中國數(shù)學(xué)家在方程章里提出了正、負(fù)數(shù)的不同表示法和正負(fù)數(shù)的加減法則,這在中國數(shù)學(xué)史上是一個(gè)無比的偉大成就。[2]在解“方程”進(jìn)行消元過程中,要進(jìn)行兩行間的對(duì)減相消,不可避免地會(huì)出現(xiàn)“以少減多”(注意不是“以多減少”)不夠減的情形,要保證這種機(jī)械化的算法暢通無阻,就必須引進(jìn)負(fù)數(shù)和建立正負(fù)數(shù)的運(yùn)算法則,然后根據(jù)法則計(jì)算出結(jié)果。
“方程”章第1問[3]:
今有上禾三秉、中禾二秉,下禾一秉,實(shí)三十九斗;上禾二秉、中禾三秉,下禾一秉,實(shí)三十四斗;上禾一秉、中禾二秉,下禾三秉,實(shí)二十六斗。問上、中、下禾實(shí)一秉各幾何?
“方程術(shù)”,可以分為10個(gè)程序步驟:
①置上禾三秉、中禾二秉,下禾一秉,實(shí)三十九斗于右方。中、左禾列如右方。
②以右行上禾遍乘中行而以直除。
③又乘其次,亦以直除。
④然以中行中禾不盡者遍乘左行,而以直除。
⑤左方下禾不盡者,上為法,下為實(shí)。實(shí)即下禾之實(shí)。
⑥求中禾,以法乘中行下實(shí)。而除下禾之實(shí)。
⑦余,如中禾秉數(shù)而一,即中禾之實(shí)。
⑧求上禾,亦以法乘右行下實(shí),而除下禾、中禾之實(shí)。
⑨余,如上禾秉數(shù)而一,即上禾之實(shí)。
⑩實(shí)皆如法,各得一斗。
程序(1)即按分離系數(shù)法將前后三次試驗(yàn)所得的十二個(gè)數(shù)據(jù)布列成右、中、左三行排列成現(xiàn)代矩陣形式如圖1:
本例實(shí)際是相當(dāng)于現(xiàn)代解下面的線性方程組:3x+2y+z=39,(1)
2x+3y+z=34,(2)
x+2y+3z=26。(3)
圖1由于“方程”模型及其解之特殊構(gòu)造性,決定了可以對(duì)它施行種種行的消元變換的過程,因而構(gòu)造性就與算法的機(jī)械化特色聯(lián)系在一起?!胺匠绦g(shù)”程序步驟②~⑩深刻體現(xiàn)了中國傳統(tǒng)數(shù)學(xué)的這兩個(gè)方面的特點(diǎn)。從現(xiàn)代觀點(diǎn)來說,“方程”的演算程序類似于矩陣的“初等變換”算法,即相當(dāng)于利用線性方程組的系數(shù)增廣矩陣進(jìn)行初等變換來求解。《九章算術(shù)》首先采取在算板上布列“方程”,然后反復(fù)對(duì)“方程”施行基本的運(yùn)算即“遍乘”,“直除”的行變換。這里的“直除”,就是作減法運(yùn)算。這里就自然需要引進(jìn)負(fù)數(shù)的運(yùn)算法則,而并不在乎負(fù)數(shù)的意義和概念是什么。因此,正負(fù)術(shù)的引入是“方程”算法機(jī)械化的結(jié)果。這在世界上是非常獨(dú)特的。
到了魏晉時(shí)期,我國偉大的數(shù)學(xué)家劉徽在《九章算術(shù)注》中給出了正負(fù)數(shù)的意義和概念,第一次深刻闡述了自己的觀點(diǎn)。劉徽為《九章算術(shù)》“正負(fù)術(shù)”作注時(shí)說:
“今兩算得失相反,要令正負(fù)以名之。正算赤,負(fù)算黑,否則以邪正為異”。[4]
正負(fù)是什么意思呢?劉徽注文中說:“今兩算得失相反,要令正負(fù)以名之?!薄八恪碑?dāng)時(shí)是指算籌,如果計(jì)算時(shí)用算籌代表“得”、“失”兩種量,那就要用正負(fù)數(shù)來定義。這個(gè)看法是很正確的,用籌進(jìn)行代數(shù)運(yùn)算時(shí)如何區(qū)別正負(fù)數(shù),以前不見記載。劉徽提出:“正算赤,負(fù)算黑,否則以邪正為異。”這就是說劉徽用紅、黑兩種顏色的算籌區(qū)別正負(fù),否則當(dāng)用一種顏色的算籌時(shí)可以在擺法上以“正”、“邪”(斜)區(qū)別正負(fù)數(shù)。這兩種方法,對(duì)后來的數(shù)學(xué)都有深遠(yuǎn)的影響。劉徽還認(rèn)為:“言負(fù)者未必負(fù)于少,言正者未必正于多”。前一句話是指負(fù)數(shù)的絕對(duì)值未必小,后一句話是指正數(shù)的絕對(duì)值也不定很大,因此這兩句話說的是關(guān)于正負(fù)數(shù)的絕對(duì)值。
2關(guān)于正負(fù)數(shù)的運(yùn)算法則
劉徽不僅在工具上規(guī)定了正負(fù)數(shù)的區(qū)別,而且還規(guī)定了正負(fù)數(shù)的運(yùn)算法則:
同名相除,異名相益,正無入負(fù)之,負(fù)無入正之。
異名相除,同名相益,正無入正之,負(fù)無入負(fù)之。[5]
前四句是指正負(fù)數(shù)的減法法則,用現(xiàn)代記號(hào)就是:當(dāng)a≥b>0時(shí),
(±a)-(±b))=±(a-b)(同名相除),
(±a)-(b)=±(a+b)(異名相益)。
0-(±a)=a(正無入負(fù)之,負(fù)無入正之)
“無入”,劉徽注釋為“為無對(duì)也,無所得減也……”,可見“無入”就是“沒有與之對(duì)減的數(shù),即是零。
后四句講的是正負(fù)數(shù)的加法法則:
(1)如果兩數(shù)異號(hào),則其和的絕對(duì)值是其絕對(duì)值之差,其符號(hào)由絕對(duì)值較大的數(shù)的符號(hào)決定:
(±a)+(b)=±(a-b),這里a≥b>0,
(±a)+(b)=(b-a),這里b≥a>0。endprint
(2)如果兩數(shù)同號(hào),則其和的絕對(duì)值是兩數(shù)絕對(duì)值之和:
(±a)+(±b)=±(a+b)
正數(shù)沒有與之相加的數(shù),仍得正數(shù),負(fù)數(shù)沒有與之相加的數(shù),仍得負(fù)數(shù):
0+(±a)=±aa>0。
現(xiàn)在在中小學(xué)數(shù)學(xué)教育中,經(jīng)常被拿來作為正負(fù)數(shù)及其運(yùn)算例子的是《九章算術(shù)》章的第8問[6]:
今有賣牛二、羊五,以買一十三豕,有余錢一千;賣牛三、豕三,以買九羊,錢適足;賣六羊、八豕,以買五牛,錢不足六百。問牛、羊、豕價(jià)各幾何?
答曰:牛價(jià)一千二百,羊價(jià)五百,豕價(jià)三百。
其解法為:
術(shù)曰:如方程。置牛二、羊五正,豕一十三負(fù),余錢數(shù)正;次,牛三正,羊九負(fù),豕三正;次,五牛負(fù),六羊正,八豕正,不足錢負(fù)。以正負(fù)術(shù)入之。
這里所說的意思就是:若每頭牛、羊、豕的價(jià)格分別用x、y、z表示,則可列出現(xiàn)代如下的方程(組):2x+5y-13z=1000,
3x-9y+3z=0,
-5x+6y+8z=-600。
在這里“方程”的各項(xiàng)系數(shù)及常數(shù)項(xiàng)中都出現(xiàn)了負(fù)數(shù),利用正負(fù)數(shù)的運(yùn)算法則計(jì)算結(jié)果是自然的,水到渠成的。
關(guān)于正負(fù)數(shù)的乘除法則,在《九章算術(shù)》時(shí)代或許會(huì)遇到有關(guān)正負(fù)數(shù)的乘除運(yùn)算,可惜書中并未論及,直到元代朱世杰在《算學(xué)啟蒙》(1299)中才有明確的記載:“同名相乘為正,異名相乘為負(fù)”,“同名相除所得為正,異名相除所得為負(fù)”,因此最遲于13世紀(jì)末,我國對(duì)有理數(shù)四則運(yùn)算法則已經(jīng)全面作了總結(jié)。此外,損益術(shù)是建立方程要用到的一種方法,“損益”即增減的意思,損益術(shù)相當(dāng)于現(xiàn)今由關(guān)系式的一端向另一端移項(xiàng),移項(xiàng)后由加變減,由減變加,相當(dāng)于改變符號(hào),這是常數(shù)項(xiàng)移項(xiàng)的情況[7]。而現(xiàn)今的移項(xiàng)就是變形,即把方程兩邊都加上(或減去)同一個(gè)數(shù)或同一個(gè)整式,就相當(dāng)于把方程中的某些項(xiàng)改變符號(hào)后,從方程的一邊移到另一邊,可見,中國古代的損益術(shù)就是移項(xiàng)變號(hào)的方法??傊?,從正負(fù)數(shù)概念的引入,到正負(fù)數(shù)加減運(yùn)算法則的形成,我國這些方面的成就都是遙遙領(lǐng)先的。
參考文獻(xiàn):
[1]郭書春。中國古代數(shù)學(xué)。北京:商務(wù)印書館。1997:8。
[2]錢寶琮。中國數(shù)學(xué)史。北京:科學(xué)出版社。1964:35。
[3][4][5][6]九章算術(shù)。郭書春匯校。沈陽:遼寧教育出版社。1990:385,388,389。
[7]郭書春。古代世界數(shù)學(xué)泰斗劉徽。濟(jì)南:山東科技出版社。1992∶49。endprint
(2)如果兩數(shù)同號(hào),則其和的絕對(duì)值是兩數(shù)絕對(duì)值之和:
(±a)+(±b)=±(a+b)
正數(shù)沒有與之相加的數(shù),仍得正數(shù),負(fù)數(shù)沒有與之相加的數(shù),仍得負(fù)數(shù):
0+(±a)=±aa>0。
現(xiàn)在在中小學(xué)數(shù)學(xué)教育中,經(jīng)常被拿來作為正負(fù)數(shù)及其運(yùn)算例子的是《九章算術(shù)》章的第8問[6]:
今有賣牛二、羊五,以買一十三豕,有余錢一千;賣牛三、豕三,以買九羊,錢適足;賣六羊、八豕,以買五牛,錢不足六百。問牛、羊、豕價(jià)各幾何?
答曰:牛價(jià)一千二百,羊價(jià)五百,豕價(jià)三百。
其解法為:
術(shù)曰:如方程。置牛二、羊五正,豕一十三負(fù),余錢數(shù)正;次,牛三正,羊九負(fù),豕三正;次,五牛負(fù),六羊正,八豕正,不足錢負(fù)。以正負(fù)術(shù)入之。
這里所說的意思就是:若每頭牛、羊、豕的價(jià)格分別用x、y、z表示,則可列出現(xiàn)代如下的方程(組):2x+5y-13z=1000,
3x-9y+3z=0,
-5x+6y+8z=-600。
在這里“方程”的各項(xiàng)系數(shù)及常數(shù)項(xiàng)中都出現(xiàn)了負(fù)數(shù),利用正負(fù)數(shù)的運(yùn)算法則計(jì)算結(jié)果是自然的,水到渠成的。
關(guān)于正負(fù)數(shù)的乘除法則,在《九章算術(shù)》時(shí)代或許會(huì)遇到有關(guān)正負(fù)數(shù)的乘除運(yùn)算,可惜書中并未論及,直到元代朱世杰在《算學(xué)啟蒙》(1299)中才有明確的記載:“同名相乘為正,異名相乘為負(fù)”,“同名相除所得為正,異名相除所得為負(fù)”,因此最遲于13世紀(jì)末,我國對(duì)有理數(shù)四則運(yùn)算法則已經(jīng)全面作了總結(jié)。此外,損益術(shù)是建立方程要用到的一種方法,“損益”即增減的意思,損益術(shù)相當(dāng)于現(xiàn)今由關(guān)系式的一端向另一端移項(xiàng),移項(xiàng)后由加變減,由減變加,相當(dāng)于改變符號(hào),這是常數(shù)項(xiàng)移項(xiàng)的情況[7]。而現(xiàn)今的移項(xiàng)就是變形,即把方程兩邊都加上(或減去)同一個(gè)數(shù)或同一個(gè)整式,就相當(dāng)于把方程中的某些項(xiàng)改變符號(hào)后,從方程的一邊移到另一邊,可見,中國古代的損益術(shù)就是移項(xiàng)變號(hào)的方法。總之,從正負(fù)數(shù)概念的引入,到正負(fù)數(shù)加減運(yùn)算法則的形成,我國這些方面的成就都是遙遙領(lǐng)先的。
參考文獻(xiàn):
[1]郭書春。中國古代數(shù)學(xué)。北京:商務(wù)印書館。1997:8。
[2]錢寶琮。中國數(shù)學(xué)史。北京:科學(xué)出版社。1964:35。
[3][4][5][6]九章算術(shù)。郭書春匯校。沈陽:遼寧教育出版社。1990:385,388,389。
[7]郭書春。古代世界數(shù)學(xué)泰斗劉徽。濟(jì)南:山東科技出版社。1992∶49。endprint
(2)如果兩數(shù)同號(hào),則其和的絕對(duì)值是兩數(shù)絕對(duì)值之和:
(±a)+(±b)=±(a+b)
正數(shù)沒有與之相加的數(shù),仍得正數(shù),負(fù)數(shù)沒有與之相加的數(shù),仍得負(fù)數(shù):
0+(±a)=±aa>0。
現(xiàn)在在中小學(xué)數(shù)學(xué)教育中,經(jīng)常被拿來作為正負(fù)數(shù)及其運(yùn)算例子的是《九章算術(shù)》章的第8問[6]:
今有賣牛二、羊五,以買一十三豕,有余錢一千;賣牛三、豕三,以買九羊,錢適足;賣六羊、八豕,以買五牛,錢不足六百。問牛、羊、豕價(jià)各幾何?
答曰:牛價(jià)一千二百,羊價(jià)五百,豕價(jià)三百。
其解法為:
術(shù)曰:如方程。置牛二、羊五正,豕一十三負(fù),余錢數(shù)正;次,牛三正,羊九負(fù),豕三正;次,五牛負(fù),六羊正,八豕正,不足錢負(fù)。以正負(fù)術(shù)入之。
這里所說的意思就是:若每頭牛、羊、豕的價(jià)格分別用x、y、z表示,則可列出現(xiàn)代如下的方程(組):2x+5y-13z=1000,
3x-9y+3z=0,
-5x+6y+8z=-600。
在這里“方程”的各項(xiàng)系數(shù)及常數(shù)項(xiàng)中都出現(xiàn)了負(fù)數(shù),利用正負(fù)數(shù)的運(yùn)算法則計(jì)算結(jié)果是自然的,水到渠成的。
關(guān)于正負(fù)數(shù)的乘除法則,在《九章算術(shù)》時(shí)代或許會(huì)遇到有關(guān)正負(fù)數(shù)的乘除運(yùn)算,可惜書中并未論及,直到元代朱世杰在《算學(xué)啟蒙》(1299)中才有明確的記載:“同名相乘為正,異名相乘為負(fù)”,“同名相除所得為正,異名相除所得為負(fù)”,因此最遲于13世紀(jì)末,我國對(duì)有理數(shù)四則運(yùn)算法則已經(jīng)全面作了總結(jié)。此外,損益術(shù)是建立方程要用到的一種方法,“損益”即增減的意思,損益術(shù)相當(dāng)于現(xiàn)今由關(guān)系式的一端向另一端移項(xiàng),移項(xiàng)后由加變減,由減變加,相當(dāng)于改變符號(hào),這是常數(shù)項(xiàng)移項(xiàng)的情況[7]。而現(xiàn)今的移項(xiàng)就是變形,即把方程兩邊都加上(或減去)同一個(gè)數(shù)或同一個(gè)整式,就相當(dāng)于把方程中的某些項(xiàng)改變符號(hào)后,從方程的一邊移到另一邊,可見,中國古代的損益術(shù)就是移項(xiàng)變號(hào)的方法??傊?,從正負(fù)數(shù)概念的引入,到正負(fù)數(shù)加減運(yùn)算法則的形成,我國這些方面的成就都是遙遙領(lǐng)先的。
參考文獻(xiàn):
[1]郭書春。中國古代數(shù)學(xué)。北京:商務(wù)印書館。1997:8。
[2]錢寶琮。中國數(shù)學(xué)史。北京:科學(xué)出版社。1964:35。
[3][4][5][6]九章算術(shù)。郭書春匯校。沈陽:遼寧教育出版社。1990:385,388,389。
[7]郭書春。古代世界數(shù)學(xué)泰斗劉徽。濟(jì)南:山東科技出版社。1992∶49。endprint
中學(xué)數(shù)學(xué)雜志(初中版)2014年2期