中国古代最著名的三道数学
比方说著名的勾股定理,这个定理在西方最早是由古希腊哲学家毕达哥拉斯发现的,所以也称为毕达哥拉斯定理,但据说这个定理在中国最早是由西周数学家商高发现的,他发现了“勾三、股四、弦五”的定理,比毕达哥拉斯早五百年。虽然在近代史上,中国的数学成就远远没有像西方那样对世界进步产生深远影响,但中国古代的数学成就还是值得肯定的。
中国古代的数学著作为我们留下了很多经典讨论,其中有三个最著名的问题,一直到现在经久不衰。
一、鸡兔同笼问题
这个数学问题出自南北朝时期的数学著作《孙子算经》。这本书的作者是谁不知道,但可以确定的是这本书和《孙子兵法》肯定没关系。《孙子算经》之所以也冠以“孙子“的名号,是因为这本书开篇序言第一句话引用了孙子的话:“孙子曰:夫算者,天地之经纬,生之园首,五常之本末,阴阳之父母……”
这本书里最著名的一个问题就是鸡兔同笼,我记得上小学那会,经常有这种类型的题。这个问
题的原文是这么说的:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?”
就是说,有一鸡和兔子在一个笼子里,头一共35个,脚一共94个,问有多少只鸡,多少只兔子。
我记得这种题目是以前学二元一次方程的入门题。设鸡有x只,兔子有y只,列个方程:
x + y = 35
2x + 4y =94
然后算出x=23,y=12,所以鸡有23只,兔子12只。
但是中国古人不懂二元一次方程,他们是怎么算的呢。古人非常机智,他们的算法比列方程还简单。鸡有两只脚,兔子有四只脚,他们假设让鸡抬起一只脚,让兔子抬起两只脚,这个时候笼子里的脚就会少一半,就是94/2=47只。这个时候的笼子里,鸡是一只脚一个头,兔子是两只脚一个头,而头一共是35个,说明多出来的就是兔子的数量,所以47-35=12,兔子就是12只。
二、物不知数问题
除了鸡兔同笼问题,《孙子算经》上另一个著名问题就是“物不知数问题”。原文是这么说的:“有物不知其数,三三数之余二,五五数之余三,七七数之余二。问物几何?”
把这个题化成数学语言就是:一个数被3除余2,被5除余3,被7除余2,求这个数。
小编我上学时数学非常犀利,不吹牛,不过现在都忘光了,如果要我现在来做这个题,我只能用最笨的办法:
被3除余2,这个数就是3a+2
被5除余3,这个数就是5b+3
被7除余2,这个数就是7c+2
然后分别把a、b、c=1,2,3,4,5,6……代进去算,一个个试,重复的答案,算出这个数最小是23。
这个问题有无数个答案,23只是最小的一个。
这个笨办法只能算数字小的情况,如果数字大了就没法算了,一个个试不知道要试到哪一年去。而我们古人的解法就非常牛逼了,古人是这么解的:
先算出3、5、7的最小公倍数105,分别约去3、5、7得到35、21、15。
三三数之余二,取数70,乘以余数2,等于140;
五五数之余三,取数21,乘以余数3,等于63;
七七数之余二,取数15,乘以余数2,等于30;
把这三个结果相加,再减去105的倍数,就能算出符合条件的最小的数,也就是140+63+30-105x2=23。
能看懂古人这个解法的,头条里可能不超过三个。反正我是看不懂为什么这么解。
这类问题在数学上称为“一次同余问题”,南北朝的《孙子算经》只是提出了一次同余的解法,但并没有归纳成一个定理。完成这个伟大任务的是宋朝数学家秦九韶,他第一个归纳出了解决一次同余的定理。这个定理被称为“中国剩余定理(Chinese remainder theorem)”,
是数论里的一个重要定理,也是西方数学世界对中国古代数学最认可的一个成就。在秦九韶几百年后,欧拉和高斯研究一次同余问题,得出了相同的定理。
简单来说就是,以后再碰到这种问题,一个数被几除余几,被几除余几,不管数字多大,都可以用这个定理求解。
三、老鼠打洞问题
这个问题出自古代数学名作《九章算术》。这本书的作者是谁也已经不知道了,从西汉到东汉一直有人不断地做修补和整理,现在流传下来的版本是魏晋数学家刘徽所作的注本。
《九章算术》最大的一个特点是,它的数学内容涵盖了生活的方方面面。书里有很多篇内容,比如方田篇,粟米篇,衰分篇(算比例分配), 商功篇(算土木体积),均输篇,等等。
《九章算术》的“盈不足篇”里有一个很有意思的老鼠打洞问题。原文这么说的:今有垣厚十尺,两鼠对穿。大鼠日一尺,小鼠亦一尺。大鼠日自倍,小鼠日自半。问:何日相逢?各穿几何?
这道题的意思就是说,有一堵十尺厚的墙,两只老鼠从两边向中间打洞。大老鼠第一天打一尺,小老鼠也是一尺。大老鼠每天的打洞进度是前一天的一倍,小老鼠每天的进度是前一天的一半。问它们几天可以相逢,相逢时各打了多少。
其实这就是经典的相遇问题,只不过比一般的相遇问题稍微复杂点,因为两个物体的速度一直在变化。这道题的答案大家可以算算。