观赏植物价格联盟

中国剩馀定理|数学文化

京师伴你学 2018-02-13 04:38:14

同学们,我们都听过“韩信点兵,多多益善”这个成语,但是,你们知道“韩信点兵”背后的数学原理吗?今天,我们就一起来学学成语背后的数学知识吧!

韩信点兵

传说我国西汉时代(公元前190年),有一位将军名字叫韩信,年轻时,他的部下对他很不服。

有一次,韩信举行阅兵,他要士兵分三纵队,末尾余下2人,便改成了五纵队,结果末尾多余3人,再改成七纵队,又余下2人,这时下级军官向他报告共有士兵2395人。韩信听了笑笑说不对,应该是2333 人。下级军官经过详细点数,果然是2333人,众官兵感到十分惊奇,无不敬佩他的智慧与才能。后来人们把这类问题就称作“韩信点兵”。


中国剩余定理

这只是一种传说,不一定可靠。不过这类问题确实记载在一千七百多年前我国古代著名的《孙子算经》里,原文是:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”它的意思是:“有一些东西,不知有多少。三个三个数剩两个,五个五个数剩三个,七个七个数剩两个。也就是一个数除以3余2,除以5余3,除以7余2,求这个数。”

这就是后来驰名于世界的“大衍求一术”的起源,也是我国古代数学中最具有独创性的成就之一,曾引起历代学术界的很大兴趣。这类问题的名称很多,如“鬼谷算”“隔墙算”“秦王暗点兵”“翦管术”“物不知总”“韩信点兵”“孙子定理”等。1852年,英国人伟烈亚力把这一数学问题传播到欧洲,受到西方学者的瞩目。现在国外的书籍上把它叫作“中国剩余定理”。


韩信点兵”的解法

那么上面这个问题怎样解答呢?

(1) 在5与7的公倍数35,70,105,…中找出“被3除余1”的数70,再将70乘2得140,140能满足“被3除余2”的条件。

(2) 在3与7的公倍数21,42, 63,…中找出“被5除余1”的数21,再将21乘3得63,63能满足“被5除余3”的条件。

(3)在3与5的公倍数15,30,…中找出“被7除余1”的数15,再将15乘2得30,30能满足“被7除余2”的条件。

(4)把140,63,30相加,得140+63+30=233。

因为233虽然满足被3除余2,被5除余3,被7除余2的条件,但是它还不是最小的数,所以还要从233中减去105(3,5,7的最小公倍数)的2倍,233-105×2=23,23才是符合条件的最小的数。



把这个解法写成一般形式如下:

如果一个数被3除余a,被5除余b,被7除余c,那么这个数是 X=70a+21b+15c(如果结果大于105,那么减去一个或几个105)。

我国明朝程大位的《算法统宗》里面有一首歌谣,就是指这个解法:

三人同行七十稀,五树梅花廿一枝,

七子团圆月正半,除百零五便得知。

歌谣中的每一句话都指出一步解法。第一句是除以3所得的余数用70去乘它;第二句是除以5所得的余数用21去乘它;第三句是除以7所得的余数用15去乘它;最后一句是指把上面所得的三个积相加,如果大于105,那么减去105的倍数,得出的差就是要求的这个数。



那么韩信又是怎样得到2333人的呢?

因为下级军官报告士兵人数是2395人,这个数除以3余1而不是余2,很快就被否定了。已知士兵总人数在2333~2400之间,根 据一般的算法,得233,再加上20个105是2100,2100+233=2333,所以韩信很快地能够算出是2333人。

如果一个数不是被3,5,7除,而是被其他三个数除,思考的方法跟上面讲的相同,只是数据不同。例如:

有一个数,被5除余2,被7除余4,被9除余3,这个数最小是几?

 想一想找出满足条件的三个数是:126,255,280。

X=126×2+255×4+280×3=1992。

1992被5,7,9的最小公倍数315除,余数是102,所以这个数最小是102。


更多精彩内容

赶紧扫码☟☟☟关注我们吧

友情链接