王朝百科
分享
 
 
 

鬼谷算法

王朝百科·作者佚名  2010-03-21  
宽屏版  字体: |||超大  

汉高祖刘邦曾问大将韩信:“你看我能带多少兵?”韩信斜了刘邦一眼说:“你顶多能带十万兵吧!”汉高祖心中有三分不悦,心想:你竟敢小看我!“那你呢?”韩信傲气十足地说:“我呀,当然是多多益善啰!”刘邦心中又添了三分不高兴,勉强说:“将军如此大才,我很佩服。现在,我有一个小小的问题向将军请教,凭将军的大才,答起来一定不费吹灰之力的。”韩信满不在乎地说:“可以可以。”刘邦狡黠地一笑,传令叫来一小队士兵隔墙站队,刘邦发令:“每三人站成一排。”队站好后,小队长进来报告:“最后一排只有二人。”“刘邦又传令:“每五人站成一排。”小队长报告:“最后一排只有三人。”刘邦再传令:“每七人站成一排。”小队长报告:“最后一排只有二人。”刘邦转脸问韩信:“敢问将军,这队士兵有多少人?”韩信脱口而出:“二十三人。”刘邦大惊,心中的不快已增至十分,心想:“此人本事太大,我得想法找个岔子把他杀掉,免生后患。”一面则佯装笑脸夸了几句,并问:“你是怎样算的?”韩信说:“臣幼得黄石公传授《孙子算经》,这孙子乃鬼谷子的弟子,算经中载有此题之算法。

“鬼谷算”是《孙子算经》上有名的“孙子问题”(又称“物不知数题”)编写而成的。原来的题目是:

“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?”

用通俗的话来说,题目的意思就是

有一些物品,不知道有多少个,只知道将它们三个三个地数,会剩下2个;五个五个地数,会剩下3个;七个七个地数,也会剩下2个。这些物品的数量至少是多少个?

(注:诗题及题目原文都无“至少”二字,但“孙子问题”都是些求“最少”或者求“至少”的问题,否则就会有无数多个答案。所以,解释题目意思时,在语句中加上了“至少”二字。)

《孙子算经》解这道题目的“术文”和答案是:

“三三数之剩二,置一百四十;五五数之剩三,置六十三;七七数之剩二,置三十。并之,得二百三十三,以二百十减之,即得。”“答曰:二十三。”

这些话是什么意思呢?用通俗的话来说,就是:

先求被3除余2,并能同时被5、7整除的数,这样的数最小是140;

再求被5除余3,并能同时被3、7整除的数,这样的数最小是63;

然后求被7除余2,并能同时被3、5整除的数,这样的数最小是30。

于是,由140+63+30=233,得到的233就是一个所要求得的数。但这个数并不是最小的。

再用求得的“233”减去或者加上3、5、7的最小公倍数“105”的倍数,就得到许许多多这样的数:

{23,128,233,338,443,…}

从而可知,23、128、233、338、443、…都是这一道题目的解,而其中最小的解是23。

答:这些物品的数目至少是23个。

需要指出的是,在《孙子算经》上,有一段关于这类题目的解题“术文”:

“凡三三数之剩一则置七十,五五数之剩一则置二十一,七七数之剩一则置十五,一百六以上以一百五减之,即得。”

(注:古称“106”和“105”为“一百六”和“一百五”,而称“160”和“150”为“一百六十”和“一百五十”。所以,这里的“一百六”和“一百五”分别指“106”和“105”,而不是“160”和“150”。)

明代著名的大数学家程大位,在他所著的《算法统宗》中,对于这种解一般“孙子问题”的方法,还编出了四句歌诀,名曰《孙子歌》:

三人同行七十稀,

五树梅花廿一枝;

七子团圆正半月,

除百零五便得知。

歌中的“廿”,读音与“念”音相同。“廿”即二十的意思。

这一歌诀的“诗意”,我们可以不去理会,只需注意它的数字就行了。歌诀中的每一句话,都指出了一步解题方法:

“三(3)人同行七十(70)稀”——是说除以3所得的余数,要用“70”去乘它;

“五(5)树梅花廿一(21)枝”——是说除以5所得的余数,要用“21”去乘它;

“七(7)子团圆正半月(15)”——“半月”是一个月30天的一半,即15日,这是说,除以 7所得的余数,要用“ 15”去乘它;

“除百零五(105)便得知”——这是说要把上面所乘得的三个数相加,加得的和如果大于105,便应减去105,或者减去105的倍数。这也就是《孙子算经》上的“一百六(106)以上,以一百五(105)减之”。这样得出的差,便是所要求的这个最小的未知数了。

运用这一歌诀来解答这道“物不知数”问题,便是

2×70+3×21+2×15=140+63+30=233

233-105-105=23(答略)

不过,用这种方法解这类问题,有它的局限性,它只能解答用3、5、7作除数的题目,遇到用其他数作除数的算题,它就行不通了。这一点必须引起我们的注意。

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
如何用java替换看不见的字符比如零宽空格​十六进制U+200B
 干货   2023-09-10
网页字号不能单数吗,网页字体大小为什么一般都是偶数
 干货   2023-09-06
java.lang.ArrayIndexOutOfBoundsException: 4096
 干货   2023-09-06
Noto Sans CJK SC字体下载地址
 干货   2023-08-30
window.navigator和navigator的区别是什么?
 干货   2023-08-23
js获取referer、useragent、浏览器语言
 干货   2023-08-23
oscache遇到404时会不会缓存?
 干货   2023-08-23
linux下用rm -rf *删除大量文件太慢怎么解决?
 干货   2023-08-08
刀郎新歌破世界纪录!
 娱乐   2023-08-01
js实现放大缩小页面
 干货   2023-07-31
生成式人工智能服务管理暂行办法
 百态   2023-07-31
英语学习:过去完成时The Past Perfect Tense举例说明
 干货   2023-07-31
Mysql常用sql命令语句整理
 干货   2023-07-30
科学家复活了46000年前的虫子
 探索   2023-07-29
英语学习:过去进行时The Past Continuous Tense举例说明
 干货   2023-07-28
meta name="applicable-device"告知页面适合哪种终端设备:PC端、移动端还是自适应
 干货   2023-07-28
只用css如何实现打字机特效?
 百态   2023-07-15
css怎么实现上下滚动
 干货   2023-06-28
canvas怎么画一个三角形?
 干货   2023-06-28
canvas怎么画一个椭圆形?
 干货   2023-06-28
canvas怎么画一个圆形?
 干货   2023-06-28
canvas怎么画一个正方形?
 干货   2023-06-28
中国河南省郑州市金水区蜘蛛爬虫ip大全
 干货   2023-06-22
javascript简易动态时间代码
 干货   2023-06-20
感谢员工的付出和激励的话怎么说?
 干货   2023-06-18
 
>>返回首页<<
 
 
静静地坐在废墟上,四周的荒凉一望无际,忽然觉得,凄凉也很美
© 2005- 王朝网络 版权所有