錢寶琮
《九章算術(shù)》是一部現(xiàn)有傳本中最古老的中國數(shù)學經(jīng)典著作.書中收集了二百四十六個應(yīng)用問題和各個問題的解法,分別隸屬于方田、粟米、衰分、少廣、商功、均輸、盈不足、方程、勾股九章.現(xiàn)在擬就問題的性質(zhì)分成算術(shù)、幾何、代數(shù)三類,介紹全書的主要內(nèi)容.下面主要介紹《九章算術(shù)》中的代數(shù)部分,列出開平方與開立方、開帶從平方、方程與正負數(shù)三個部分.
一、開平方與開立方
《九章算術(shù)》的少廣章中提到了開平方法和開立方法,內(nèi)容簡明,依照兩種方法進行演算也很方便.開平方法借用一根算籌來表示未知量的平方,開立方法借用一根算籌表示未知量的立方,這樣就建立了籌式和代數(shù)方程之間的聯(lián)系.開平方或開立方的各個演算步驟相當于解方程中求正根的過程.中國古代開平方、開立方的方法,不僅具有算術(shù)上的意義,更重要的是它們具有代數(shù)方面的意義.
少廣章中的開方術(shù)說:“置積為實.借一算,步之,超一等.議所得,以一乘所借一算為法而以除.除已,倍法為定法.其復除,折法而下.復置借算步之如初.以復議一乘之,所得副,以加定法以除.以所得副從定法.復除,折下如前.”
例如,少廣章中的第12題:一平方積為55225,求方邊的長.布置算籌 ,這叫做“實”(被開方數(shù)).取一算籌放在“實”的個位下邊,如圖1,這個籌式用代數(shù)符號表達出來是一個方程 .將這個“借算”向左移動,每一步移兩位,移兩步,便停在“實”的萬位上,如圖2.這樣,“借算”所表示的數(shù)不是 ,而是 ,原方程就變?yōu)?,可估算出 x 大于2而小于3,在“實”的百位上面放算籌ll,表示平方根的第一個數(shù)碼.
以“議得”的2乘以10000得20000,擺在“實”的下面,“借算”的上面的算籌,叫做“法”.再以“議得”的2乘以“法”得40000,從“實”中減去40000,余數(shù)為15225,如圖3.把“法”數(shù)加倍,向右邊移一位,就變?yōu)?000,叫做“定法”.把“借算”向右邊移兩位,就變成100,如圖4.這個籌式和代數(shù)方程 有同樣的意義.
“議得”x 大于3而小于4,就把作3為平方根的第二個數(shù)碼,將其放在“實”的十位上面.用3乘以100得300,將其放在“定法”的右邊,加上“定法”得4300.用3乘以4300,從“實”中減去4300,余數(shù)為2325,如圖5.再將300加上4300得4600,向右邊移一位可得460,這是求平方根的第三個數(shù)碼.把“借算”向右邊移兩位變?yōu)?,如圖6.這籌式和代數(shù)方程 有同樣的意義.
議得平方根的個位數(shù) .用5乘以“借算”1得5,加上460得 465.用5乘以465,從“實”內(nèi)減去它,沒有余數(shù).這樣,我們就得到55225的平方根235.當被開方數(shù)是一個分數(shù)時,分母 b 開得盡,則 ,若開不盡,則 .
少廣章中的開立方術(shù)說:“置積為實,借一算,步之,超二等.議所得,以再乘所借一算為法,而除之,除已,三之為定法.復除.折而下以三乘所得數(shù)置中行復借一算置下行步之,中超一、下超二位.復置議,以一乘中,再乘下,皆副,以加定法以定法除除已,倍下,并中從定法復除,折下如前.”
例如,少廣章中的第19題:求1860867的立方根.要先布置算籌 ,將其作為“實”,并在“實”下面保留兩個空層,把“算借”放在最下層.把這個“借算”從個位上移到千位上,再移到百萬位上,如圖8.這個籌式表示代數(shù)方程
通過估算可得 x1>1,將其作為立方根的第一個數(shù)碼,在“實”的百位上面.用1乘以1000000得1000000,把它放在借算上面,稱為“中行”.再用1乘以“中行”得1000000,將其放在“中行”的上面,“實”的下面,稱為“法”.用1乘以“法”,從“實”內(nèi)減去1000000,余數(shù)為860867,如圖9.將其乘以3并向右移一位,將300000作為“定法”,“中行”乘以3并向右移兩位可得30000.把“借算”向右移三位,可得1000,如圖10.這個籌式表示方程
又“議得”x2>2,將其放在立方根的第二個數(shù)碼上,并放在“實”的十位上,把“中行”乘以2得60000,將其放在“法”的右邊.用2的平方乘以“借算”得4000,將其放在“中行”的右邊.又將這兩個數(shù)加上“定法”得364000.用2以乘“法”,從"實"內(nèi)減去所得的結(jié)果,余數(shù)為132867,如圖11.
用2乘以余下的數(shù)得8000,,加上“法”得432000,向右移一位得“定法”為43200.用3×2乘以“借算”得6000,加上“中行”得36000,向右移兩位得360.把“借算”向右移三位,如圖12.這個籌式表示方程? .
再“議得”立方根的末位數(shù)為 x3=3.用3乘以“中行”得1080,用3的平方乘以“借算”得9,將兩數(shù)并入“定法”得44289為“法”,用3乘以”法”,從”實”內(nèi)減去所得的結(jié)果,恰好為0,如圖13.這樣就得1860867的立方根123.
二、開帶從平方
中國古代數(shù)學中求二次方程 x 2+ bx = c 的正根,經(jīng)常用開帶從平方法.這個方法的數(shù)字計算程序一般比“補足方”的方法要簡便得多《.九章算術(shù)》的勾股章中第 20題是一個開帶從平方的例子:今有邑方不知大小,各中開門出北門二十步有木.出南門十四步,折而西行一千七百七十五步見木.問邑方幾何.題目的意思是:已知 CB =20步,F(xiàn)E =14步,ED =1775步,求 FC .解法是:以出北門步數(shù),乘西行步數(shù),倍之為實.并出南門步數(shù)為從法.開方除之,即邑方.即設(shè) x = FC =2AC ,則 ,或 .式內(nèi) x 的系數(shù)34是“從法”,常數(shù)項71000是“實”.
《九章算術(shù)》中沒有說明怎樣開帶從法的平方.但我們從少廣章的“開方術(shù)”中了解到,所列的籌式是一個有“從法”的開方式,用少廣開方術(shù)求平方根第二個、第三個數(shù)碼的方法就可以求出方程 x 2+ 34x =71000的正根,得“邑方”x =250步.當然,一般二次方程都可以用開帶從平方法求出它的個根.
三、方程與正負數(shù)
《九章算術(shù)》的方程章中提到的“方程”是指聯(lián)立一次方程組.例如,第1題:今有上禾三秉,中禾二秉,下禾一秉,實三十九斗;上禾二秉,中禾三秉,下禾一秉,實三十四斗;上禾一秉,中禾二秉,下禾三秉,實二十六斗.問上、中、下禾實一秉各幾何“.禾”是黍米,“一秉”是一捆,“實”是打下來的黍米谷子.秦漢時期一“斗”的量約等于現(xiàn)在的二升“.上禾三秉,中禾二秉,下禾一秉,實三十九斗”譯成現(xiàn)代語是:三捆上等的谷子,二捆中等的谷子,一捆下等的谷子,打出來的黍米谷子一共有39斗.
設(shè) x、y、z 依次為每捆上、中、下等谷子的“斗”數(shù),那么這個問題是求解下列三元一次方程組:
用算籌布置起來,如圖14,各行由上而下列出的算籌表示 x、y、z 的系數(shù)和常數(shù)項.三元一次方程組各項未知量的系數(shù)用算籌表示就像方陣,所以叫做“方程”.古代數(shù)學書中的“方程”和現(xiàn)在一般所謂方程是兩個不同的概念.包含不止一個未知量的算式和聯(lián)立方程組的概念.
以上面所舉的第1題為例,依照方程章的“方程術(shù)”演算如下:
用(1)式內(nèi) x 的系數(shù)3乘以(2)式中的各項,得6x +9y +3z =102(4)
將(4)式“直除”(1)式,也就是兩次減去(1)式的各項,得5y + z =24,(5)
同樣,用(1)式內(nèi) x 的系數(shù)3乘以(3)式中的各項,得3x +6y +9z =78,(6)
將(6)式“直除”(1)式,得4y +8z =39,(7)
用算籌來演算得結(jié)果,如圖15.
然后,用(5)式內(nèi) x 的系數(shù)5乘以(7)式中的各項,得20y +40z =195,(8)
將(8)式“直除”(5)式,得36z =99,(9)
將(9)式的兩端同時除以9,得4z =11,(10),籌式如圖16所示.在圖16中,左行的未知量項只剩一項,用4除以11,即得 二斗.求 x 和 y ,還是用”遍乘直除”的方法.用(10)式的系數(shù)4乘以(5)式的各項,得20y +4z =96,再"直除"(10)式得20y =85,將(10)的兩端同時除以5,得4y =17.(11)
用(10)式的系數(shù)4乘以(11)式的各項,得12x +8y +4z =156,“直除”(10)式,得12x +8y =145;再"直除"(11)式,得12x =111,將(11)的兩端同時除以3,得4x =37(12),籌式如圖17.
從圖14到圖17,方程組的算籌形式始終保持右、中、左三行,運籌演算相當便利.最后由(10)(11)(12)式,計算得 .
如果我們把上列消元過程中的四個籌算圖寫成現(xiàn)代代數(shù)學中矩陣的形式:
那么,利用直除法的方程術(shù)就是一種關(guān)于矩陣的計算《.九章算術(shù)》的方程章中有十八個聯(lián)立一次方程組問題,其中二元的有八題,三元的有六題,四元的、五元的各有兩題,都用上述的演算程序解答多元一次方程組.
該方法在印度最早出現(xiàn)于七世紀初婆羅門笈多(Brahmagupta,約628年)所著書中.在歐洲,最早提出三元一次方程組的解法是十六世紀中的法國數(shù)學家布丟(Buteo,1559年)《.九章算術(shù)》中的方程術(shù),不但是中國古代數(shù)學中的偉大成就,在世界數(shù)學史上,也是一份最可寶貴的財產(chǎn).
“方程”的每一行是由多項未知量和一個已知量所組成的等式,其中可能有相反意義的數(shù)量,由此產(chǎn)生正數(shù)與負數(shù)的對立概念.用“直除”法消元,當減數(shù)大于被減數(shù)時,也需要負數(shù)的概念來擴充減法的功用.因此,中國數(shù)學家在方程章里提出了正負數(shù)的不同表示法和正負數(shù)的加減法則.這在數(shù)學史上是一個無比的偉大成就.
正負術(shù)是指,同名相除,異名相益.正無入負之,負無入正之其異名相除,同名相益.正無入正之,負無入負之.這是方程章正負數(shù)加減法則的條文“.同名”“異名”就是現(xiàn)在所謂同號、異號.文中指出,兩數(shù)同號則絕對值的差是余數(shù)的絕對值;兩數(shù)異號則絕對值的和是余數(shù)的絕對值;減去的數(shù)如其是正數(shù)而大于被減數(shù)時,余數(shù)得負號;如其是負數(shù)而小于被減數(shù)時,余數(shù)得正號;兩數(shù)同號則和數(shù)的絕對值等于兩絕對值的和;兩數(shù)異號則和數(shù)的絕對值等于兩絕對值的差;當兩數(shù)異號時,其中正數(shù)的絕對值較大則和數(shù)取正號,其中負數(shù)的絕對值較大則和數(shù)取負號.有了這正負數(shù)加減法則后,“直除”消元法的應(yīng)用可以推廣到任何聯(lián)立一次方程組.在后世的“開方法”和天元術(shù)里,正負數(shù)加減法則也起著重要的作用.
——摘自《中國數(shù)學史》