《九章算术》是中国古代张苍、耿寿昌所撰写的一部数学专著。是《算经十书》中最重要的一部,成于公元一世纪左右。其作者已不可考。一般认为它是经历代各家的增补修订,而逐渐成为现今定本的,西汉的张苍、耿寿昌曾经做过增补和整理,其时大体已成定本。最后成书最迟在东汉前期,现今流传的大多是在三国时期魏元帝景元四年(263年),刘徽为《九章》所作的注本。
《九章算术》内容十分丰富,全书总结了战国、秦、汉时期的数学成就。同时,《九章算术》在数学上还有其独到的成就,不仅最早提到分数问题,也首先记录了盈不足等问题,《方程》章还在世界数学史上首次阐述了负数及其加减运算法则。它是一本综合性的历史著作,是当时世界上最简练有效的应用数学,它的出现标志中国古代数学形成了完整的体系。
2020年4月,列入《教育部基础教育课程教材发展中心中小学生阅读指导目录(2020年版)》初中段。
《九章算术》的内容十分丰富,全书采用问题集的形式,收有246个与生产、生活实践有联系的应用问题,其中每道题有问(题目)、答(答案)、术(解题的步骤,但没有证明),有的是一题一术,有的是多题一术或一题多术。这些问题依照性质和解法分别隶属于方田、粟米、衰(音cui)分、少广、商功、均输、盈不足、方程及勾股。共九章如下所示。原作有插图,今传本已只剩下正文了。
《九章算术》共收有246个数学问题,分为九章。它们的主要内容分别是:
第一章“方田”:主要讲述了平面几何图形面积的计算方法。包括长方形、等腰三角形、直角梯形、等腰梯形、圆形、扇形、弓形、圆环这八种图形面积的计算方法。另外还系统地讲述了分数的四则运算法则,以及求分子分母最大公约数等方法。
第二章“粟米”:谷物粮食的按比例折换;提出比例算法,称为今有术;衰分章提出比例分配法则,称为衰分术;
第三章“衰分”:比例分配问题。
第四章“少广”:已知面积、体积,反求其一边长和径长等;介绍了开平方、开立方的方法。
第五章“商功”:土石工程、体积计算;除给出了各种立体体积公式外,还有工程分配方法;
第六章“均输”:合理摊派赋税;用衰分术解决赋役的合理负担问题。今有术、衰分术及其应用方法,构成了包括今天正、反比例、比例分配、复比例、连锁比例在内的整套比例理论。西方直到15世纪末以后才形成类似的全套方法。
第七章“盈不足”:即双设法问题;提出了盈不足、盈适足和不足适足、两盈和两不足三种类型的盈亏问题,以及若干可以通过两次假设化为盈不足问题的一般问题的解法。这也是处于世界领先地位的成果,传到西方后,影响极大。
第八章“方程”:一次方程组问题;采用分离系数的方法表示线性方程组,相当于现在的矩阵;解线性方程组时使用的直除法,与矩阵的初等变换一致。这是世界上最早的完整的线性方程组的解法。在西方,直到17世纪才由莱布尼兹提出完整的线性方程的解法法则。这一章还引进和使用了负数,并提出了正负术——正负数的加减法则,与现今代数中法则完全相同;解线性方程组时实际还施行了正负数的乘除法。这是世界数学史上一项重大的成就,第一次突破了正数的范围,扩展了数系。外国则到7世纪印度的婆罗摩及多才认识负数。
第九章“勾股”:利用勾股定理求解的各种问题。其中的绝大多数内容是与当时的社会生活密切相关的。提出了勾股数问题的通解公式:若a、b、c分别是勾股形的勾、股、弦,则,m>n。在西方,毕达哥拉斯、欧几里得等仅得到了这个公式的几种特殊情况,直到3世纪的丢番图才取得相近的结果,这已比《九章算术》晚约3个世纪了。勾股章还有些内容,在西方却还是近代的事。例如勾股章最后一题给出的一组公式,在国外到19世纪末才由美国的数论学家迪克森得出。
《九章算术》确定了中国古代数学的框架,以计算为中心的特点,密切联系实际,以解决人们生产、生活中的数学问题为目的的风格。其影响之深,以致以后中国数学着作大体采取两种形式:或为之作注,或仿其体例着书;甚至西算传入中国之后,人们着书立说时还常常把包括西算在内的数学知识纳入九章的框架。然而,《九章算术》亦有其不容忽视的缺点:没有任何数学概念的定义,也没有给出任何推导和证明。魏景元四年(263年),刘徽给《九章算术》作注,才大大弥补了这个缺陷。
刘徽是中国数学家之一。他的生平知之甚少。据考证,他是山东邹平人。刘徽定义了若干数学概念,全面论证了《九章算术》的公式解法,提出了许多重要的思想、方法和命题,他在数学理论方面成绩斐然。
刘徽对数学概念的定义抽象而严谨。他揭示了概念的本质,基本符合现代逻辑学和数学对概念定义的要求。而且他使用概念时亦保持了其同一性。如他提出凡数相与者谓之率,把率定义为数量的相互关系。又如他把正负数定义为今两算得失相反,要令正负以名之,摆脱了正为余,负为欠的原始观念,从本质上揭示了正负数得失相反的相对关系。
《九章算术》的算法尽管抽象,但相互关系不明显,显得零乱。刘徽大大发展深化了中算中久已使用的率概念和齐同原理,把它们看作运算的纲纪。许多问题,只要找出其中的各种率关系,通过乘以散之,约以聚之,齐同以通之,都可以归结为今有术求解。
一平面(或立体)图形经过平移或旋转,其面积(或体积)不变。把一个平面(或立体)图形分解成若干部分,各部分面积(或体积)之和与原图形面积(或体积)相等。基于这两条不言自明的前提的出入相补原理,是中国古代数学进行几何推演和证明时最常用的原理。刘徽发展了出入相补原理,成功地证明了许多面积、体积以及可以化为面积、体积问题的勾股、开方的公式和算法的正确性。
《九章算术》是中国古代的数学专著,是“算经十书”(汉唐之间出现的十部古算书)中最重要的一种。魏晋时刘徽为《九章算术》作注时说:“周公制礼而有九数,九数之流则《九章》是矣”,又说“汉北平侯张苍、大司农中丞耿寿昌皆以善算命世。苍等因旧文之遗残,各称删补,故校其目则与古或异,而所论多近语也”。
根据研究,西汉的张苍、耿寿昌曾经做过增补。最后成书最迟在东汉前期,但是其基本内容在西汉后期已经基本定型。
《汉书艺文志》(班固根据刘歆《七略》写成者)中着录的数学书仅有《许商算术》、《杜忠算术》两种,并无《九章算术》,可见《九章算术》的出现要晚于《七略》。《后汉书马援传》载其侄孙马续“博览群书,善《九章算术》”,马续是公元1世纪最后二、三十年时人。再根据《九章算术》中可供判定年代的官名、地名等来推断,现传本《九章算术》的成书年代大约是在公元1世纪的下半叶。九章算术将书中的所有数学问题分为九大类,是陈凯靖编辑的
1984年,在湖北出土了《算数书》书简。据考证,它比《九章算术》要早一个半世纪以上,书中有些内容和《九章算术》非常相似,一些内容的文句也基本相同。有人推测两书具有某些继承关系,但也有不同的看法认为《九章算术》没有直接受到《算数书》影响。
后世的数学家,大都是从《九章算术》开始学习和研究数学,许多人曾为它作过注释。其中最著名的有刘徽(263)、李淳风(656)等人。刘、李等人的注释和《九章算术》一起流传至今。唐宋两代,《九章算术》都由国家明令规定为教科书。到了北宋,《九章算术》还曾由政府进行过刊刻(1084),这是世界上最早的印刷本数学书。在现传本《九章算术》中,最早的版本乃是上述北宋本的南宋翻刻本(1213),现藏于上海图书馆(孤本,残,只余前五卷)。清代戴震由《永乐大典》中抄出《九章算术》全书,并作了校勘。此后的《四库全书》本、武英殿聚珍本、孔继涵刻的《算经十书》本(1773)等,大多数都是以戴校本为底本的。
作为一部世界数学名著,《九章算术》早在隋唐时期即已传入朝鲜、日本。它已被译成日、俄、德、法等多种文字版本。
《九章算术》中的数学成就是多方面的:
(1)、在算术方面的主要成就有分数运算、比例问题和“盈不足”算法。《九章算术》是世界上最早系统叙述了分数运算的著作,在第二、三、六章中有许多比例问题,在世界上也是比较早的。“盈不足”的算法需要给出两次假设,是一项创造,中世纪欧洲称它为“双设法”,有人认为它是由中国经中世纪阿拉伯国家传去的。
《九章算术》中有比较完整的分数计算方法,包括四则运算,通分、约分、化带分数为假分数(我国古代称为通分内子,“内”读为纳)等等。其步骤与方法大体与现代的雷同。
分数加减运算,《九章算术》已明确提出先通分,使两分数的分母相同,然后进行加减。加法的步骤是“母互乘子,并以为实,母相乘为法,实如法而一”这里“实”是分子。“法”是分母,“实如法而一”也就是用法去除实,进行除法运算,《九章算术》还注意到两点:其一是运算结果如出现“不满法者,以法命之”。就是分子小于分母时便以分数形式保留。其二是“其母同者,直相从之”,就是分母相同的分数进行加减,运算时不必通分,使分子直接加减即可。
《九章算术》中还有求最大公约数和约分的方法。求最大公约数的方法称为“更相减损”法,其具体步骤是“可半者半之,不可半者,副置分母子之数,以少减多,更相减损,求其等也。以等数约之。”这里所说的“等数”就是我们现在的最大公约数。可半者是指分子分母都是偶数,可以折半的先把它们折半,即可先约去2。不都是偶数了,则另外摆(即副置)分子分母算筹进行计算,从大数中减去小数,辗转相减,减到余数和减数相等,即得等数。
在《九章算术》的第二、三、六等章内,广泛地使用了各种比例解应用问题。粟米章的开始就列举了各种粮食间互换的比率如下:“粟米之法:粟率五十,粝米三十,粺米二十七,糳米二十四,……”这是说:谷子五斗去皮可得糙米三斗,又可舂得九折米二斗七升,或八拆米二斗四升,……。例如,粟米章第一题:“今有粟米一斗,欲为粝米,问得几何”。它的解法是:“以所有数乘所求率为实,以所有率为法,实如法而一”。
《九章算术》第七章“盈不足”专讲盈亏问题及其解法其中第一题:“今有(人)共买物,(每)人出八(钱),盈(余)三钱;人出七(钱),不足四(钱),问人数、物价各几何”,“答曰:七人,物价53(钱)。”“盈不足术曰:置所出率,盈、不足各居其下。令维乘(即交错相乘)所出率,并以为实,并盈,不足为法,实如法而一……置所出率,以少减多,余,以约法、实。实为物价,法为人数”。盈不足术是中国数学史上解应用问题的一种别开生面的创造,它在我国古代算法中占有相当重要的地位。盈不足术还经过丝绸之路西传中亚阿拉伯国家,受到特别重视,被称为“契丹算法”,后来又传入欧洲,中世纪时期“双设法”曾长期统治了他们的数学王国。
(2)、《九章算术》总结了生产、生活实践中大量的几何知识,在方田、商功和勾股章中提出了很多面积、体积的计算公式和勾股定理的应用。
《九章算术》方田章主要论述平面图形直线形和圆的面积计算方法。《九章算术》方田章第一题“今有田广十五步,从(音纵zong)十六步。问为田几何。”“答曰:一亩”。这里“广”就是宽,“从”即纵,指其长度,“方田术曰:广从步数相乘得积步,(得积步就是得到乘积的平方步数)以亩法二百四十步(实质应为积步)除之,即亩数。百亩为一顷。”当时称长方形为方田或直田。称三角形为圭田,面积公式为“术曰:半广以乘正从”。这里广是指三角形的底边,正从是指底边上的
高,刘徽在注文中对这一计算公式实质上作了证明:“半广者,以盈补虚,为直田也。”“亦可以半正从以乘广”(图1-30)。盈是多余,虚乃不足。“以盈补虚”就是以多余部分填补不足的部分,这就是我国古代数学推导平面图形面积公式所用的传统的“出入相补”的方法,由上图“以盈补虚”变圭田为与之等积的直田,于是得到了圭田的面积计算公式。
方田章第二十七、二十八题把直角梯形称为“邪田”(即斜田)它的面积公式是:“术曰:并两邪(即两斜,应理解为梯形两底)而半之,以乘正从……,又可半正从……以乘并。”刘徽在注中说明他的证法仍是“出入相补”法。在方田章第二十九、三十题把一般梯形称为“箕田”,上、下底分别称为“舌”、“踵”,面积公式是:“术曰:并踵舌而半之,以乘正从”。
至于圆面积,在《九章算术》方田章第三十一、三十二题中,它的面积计算公式为:“半周半径相乘得积步”。这里“周”是圆周长,“径”是指直径。这个圆面积计算公式是正确的。只是当时取径一周三(即π≈3)。于是由此计算所得的圆面积就不够精密。
《九章算术》商功章收集的都是一些有关体积计算的问题。但是商功章并没有论述长方体或正方体的体积算法。看来《九章算术》是在长方体或正方体体积计算公式:V=abc的基础上来计算其他立体图形体积的。
《九章算术》商功章提到城、垣、堤、沟、堑、渠,因其功用不同因而名称各异,其实质都是正截面为等腰梯形的直棱柱,他们的体积计算方法:“术曰:并上、下广而半之,以高若深乘之,又以袤乘之,即积尺”。这里上、下广指横截面的上、下底(a,b)高或深(h),袤是指城垣……的长(l)。因此城、垣…的体积计算术公式V=1/2(a b)h.
刘徽在注释中把对于平面图形的出入相补原理推广应用到空间图形,成为“损广补狭”以证明几何体体积公式。
刘徽还用棋验法来推导比较复杂的几何体体积计算公式。所谓棋验法,“棋”是指某些几何体模型即用几何体模型验证的方法,例如长方体本身就是“棋”[图1-32(1)]斜解一个长方体,得两个两底面为直角三角形的直三棱柱,我国古代称为“堑堵”(如图),所以堑堵的体积是长方体体积的二分之一。
《九章算术》商功章还有圆锥、圆台(古代称“圆亭”)的体积计算公式。甚至对三个侧面是等腰梯形,其他两面为勾股形的五面体[图1-33(1)],上、下底为矩形的拟
柱体(古代称“刍童”)以及上底为一线段,下底为一矩形的拟柱体(古代称“刍甍”)(“甍”音“梦”)等都可以计算其体积。
(3)、《九章算术》中的代数内容同样很丰富,具有当时世界的先进水平。
1.开平方和开立方
《九章算术》中讲了开平方、开立方的方法,而且计算步骤基本一样。所不同的是古代用筹算进行演算,现以少广章第12题为例,说明古代开平方演算的步骤,“今有积五万五千二百二十五步。问为方几何”。“答曰:二百三十五步”。这里所说的步是我国古代的长度单位。
“开方(是指开平方,由正方形面积求其一边之长。)术曰:置积为实(即指筹算中把被开方数放置于第二行,称为实)借一算(指借用一算筹放置于最后一行,如图1-25(1)所示用以定位)。步之(指所借的算筹一步一步移动)超一等(指所借的算筹由个位越过十位移至百位或由百位越过千位移至万位等等,这与现代笔算开平方中分节相当如图1-25(2)所示)。议所得(指议得初商,由于实的万位数字是5,而且22<5<32,议得初商为2,而借算在万位,因此应在第一行置初商2于百位,如图1-25(3)所示)。以一乘所借一算为法(指以初商2乘所借算一次为20000,置于“实”下为“法”,如图1-25(4)所示)而以除(指以初商2乘“法”20000得40000,由“实”减去得:55225-40000=15225,如图1-25(5)所示)除已,倍法为定法,其复除,折法而下(指将“法”加倍,向右移一位,得4000为“定法”因为要求平方根的十位数字,需要把“借算”移至百位,如图1-25(6)所示)。复置借算步之如初,以复议一乘之,所得副,以加定法,以除(这一段是指:要求平方根的十位数字,需置借算于百位。因“实”的千位数字为15,且4×3<15<4×4,于是再议得次商为3。置3于商的十位。以次商3乘借算得3×100=300,与定法相加为4000 300=4300。再乘以次商,则得:3×4300=12900,由“实”减去得:15225-12900=2325。如图1-25(7)所示,以所得副从定法,复除折下如前(这一段是指演算如前,即再以300×1 4300=4600向右移一位,得460,是第三位方根的定法,再把借算移到个位,如图1-25(8)所示;又议得三商应为5,再置5于商的个位如图1-25(9)所示,以5 460=465,再乘以三商5,得465×5=2325经计算恰尽如图1-25(10)所示,因此得平方根为235。)
上述由图1-25(1)—(10)是按算筹进行演算的,看起来似乎很繁琐,实际上步骤十分清楚,易于操作。它的开平方原理与现代开平方原理相同。其中“借算”的右移、左移在现代的观点下可以理解为一次变换和代换。《九章算术》时代并没有理解到变换和代换,但是这对以后宋、元时期高次方程的解法是有深远影响的。
《九章算术》方程章中的“方程”是专指多元一次方程组而言,与“方程”的含义并不相同。《九章算术》中多元一次方程组的解法,是将它们的系数和常数项用算筹摆成“方阵”(所以称之谓“方程”)。消元的过程相当于现代大学课程高等代数中的线性变换。
由于《九章算术》在用直除法解一次方程组过程中,不可避免地要出现正负数的问题,于是在方程章第三题中明确提出了正负术。刘徽在该术的注文里实质上给出了正、负数的定义:“两算得失相反,要令‘正’、‘负’以名之”。并在计算工具即算筹上加以区别“正算赤,负算黑,否则以邪正为异”。这就是规定正数用红色算筹,负数用黑色算筹。如果只有同色算筹的话,则遇到正数将筹正放,负数时邪(同斜)放。宋代以后出现笔算也相应地用红、黑色数码字以区别正、负数,或在个位数上记斜划以表示负数,如(即—1824),后来这种包括负数写法在内的中国数码字还传到日本。
关于正、负数的加减运算法则,“正负术曰:同名相益,异名相除,正无入负之,负无入正之。其异名相除,同名相益,正无入正之,负无入负之”。这里所说的“同名”、“异名”分别相当于所说的同号、异号。“相益”、“相除”是指二数相加、相减。术文前四句是减法运算法则:
(1)如果被减数绝对值大于减数绝对值,即a>b≥0,
则同名相益:(±a)-(±b)=±(a-b),
异名相除:(±a)-(b)=±(a b)。
(2)如果被减数绝对值小于减数绝对值,即b>a≥0。
①如果两数皆正
则a-b=a-[a (b-a)]=-(b-a)。
中间一式的a和a对消,而(b-a)无可对消,则改“正”为“负”,即“正无入负之”。“无入”就是无对,也就是无可对消(或不够减或对方为零)。
②如果两数皆负
则(-a)-(-b)=-a-[(-a)-(b-a)]= (b-a)。在中间的式子里(-a)和(-a)对消,而-(b-a)无可对消,则改“负”为“正”所以说“负无入正之”。
③如果两数一正一负。则仍同(1)的异名相益。
术文的后四句是指正负数加法运算法则。
(1)同号两数相加,即同名相益,其和的绝对值等于两数绝对值和。
如果a>0,b>0,
则a b=a b,(-a) (-b)=-(a b)
(2)异号两数相加,实为相减,即异名相除。如果正数的绝对值较大,其和为正,即“正无入正之”。如果负数的绝对值较大,其和为负,即“负无入负之”。用符号表示为
①如果a>b≥0,
则a (-b)=[b (a-b)] (-b)=a-b,
或(-a) b=[(-b)-(a-b)] b=-(a-b)。
②如果b>a≥0,
则a (-b)=a [(-a)-(b-a)]=-(b-a),
或(-a) b=(-a) [a (b-a)]=b-a。
关于正负数的乘除法则,在《九章算术》时代或许会遇到有关正负数的乘除运算。可惜书中并未论及,直到元代朱世杰于《算学启蒙》(1299年)中才有明确的记载:“同名相乘为正,异名相乘为负”,“同名相除所得为正,异名相除所得为负”,因此至迟于13世纪末我国对有理数四则运算法则已经全面作了总结。至于正负数概念的引入,正负数加减运算法则的形成的历史记录,我国更是遥遥领先。国外首先承认负数的是七世纪印度数学家婆罗门岌多(约598-?)欧洲到16世纪才承认负数。
现传本《九章算术》成书于何时,众说纷纭,多数认为在西汉末到东汉初之间,约公元一世纪前后,《九章算术》的作者不详。很可能是在成书前一段历史时期内通过多人之手逐次整理、修改、补充而成的集体创作结晶。由于二千年来经过辗转手抄、刻印,难免会出现差错和遗漏,加上《九章算术》文字简略有些内容不易理解,因此历史上有过多次校正和注释。
关于对《九章算术》所做的校注主要有:西汉张苍增订、删补,三国时曹魏刘徽注,唐李淳风注,南宋杨辉著《详解九章算法》选用《九章算术》中80道典型的题作过详解并分类,清李潢(?—1811年)所著《九章算术细草图说》对《九章算术》进行了校订、列算草、补插图、加说明,尤其是图文并茂之作。
现代钱宝琮(1892—1974年)曾对包括《九章算术》在内的《算经十书》进行了校点,用通俗语言、近代数学术语对《九章算术》及刘、李注文详加注释。80年代以来,今人白尚恕、郭书春、李继闵等都有校注本出版。
《九章算术》是世界上最早系统叙述了分数运算的著作;其中盈不足的算法更是一项令人惊奇的创造;“方程”章还在世界数学史上首次阐述了负数及其加减运算法则。在代数方面,《九章算术》在世界数学史上最早提出负数概念及正负数加减法法则;中学讲授的线性方程组的解法和《九章算术》介绍的方法大体相同。注重实际应用是《九章算术》的一个显着特点。该书的一些知识还传播至印度和阿拉伯,甚至经过这些地区远至欧洲。
《九章算术》是几代人共同劳动的结晶,它的出现标志着中国古代数学体系的形成.后世的数学家,大都是从《九章算术》开始学习和研究数学知识的。唐宋两代都由国家明令规定为教科书。1084年由当时的北宋朝廷进行刊刻,这是世界上最早的印刷本数学书。可以说,《九章算术》是中国为数学发展做出的又一杰出贡献。
在九章算术中有许多数学问题都是世界上记载最早的。例如,关于比例算法的问题,它和后来在16世纪西欧出现的三分律的算法一样。关于双设法的问题,在阿拉伯曾称为契丹算法,13世纪以后的欧洲数学著作中也有如此称呼的,这也是中国古代数学知识向西方传播的一个证据。
《九章算术》对中国古代的数学发展有很大影响,这种影响一直持续到了清朝中叶。《九章算术》的叙述方式以归纳为主,先给出若干例题,再给出解法,不同于西方以演绎为主的叙述方式,中国后来的数学著作也都是采用叙述方式为主。历代数学家有不少人曾经注释过这本书,其中以刘徽和李淳风的注释最有名。
《九章算术》还流传到了日本和朝鲜,对其古代的数学发展也产生了很大的影响。
2020年4月,列入《教育部基础教育课程教材发展中心中小学生阅读指导目录(2020年版)》初中段。