千米小说网

千米小说网>数学趣味活动 > 九韩信点兵(第2页)

九韩信点兵(第2页)

——还是不对,七个七个地数,只剩一个。

这真叫我走投无路了!那天的晚饭虽然仍是那位老板留我们吃,但当祖父答应留在那里的时候,我非常难过,眼巴巴地望着他,希望他能领我回家,我真是脸上热一阵冷一阵的,哪儿有心思吃饭!我想得头都胀了,总想不出答案。羞愧、气闷,因而还有些恼怒,满心充塞着这些滋味没精打采地在夜里跟随祖父回家。我的祖父对我很慈爱,但督责也很严,他在外面虽不曾向我说什么,一到家里,他就开始教训我了:

——读书要用心!……在别人的面前不好夸口!……“宁在人前全不会,勿在人前会不全!”小小年纪晓得些什么?别人问到就说不知道好了……

这时他的脸上严肃中还带有几分生气的神情。他教训我时,我的母亲、婶母、哥哥都在旁边,后来他慢慢地将我的遭遇说给他们听,我的哥哥听他说完了题目便脱口而出:

——二十三。

我非常不服气:

——别人告诉过你的!

——还这样不上进。

祖父真生气了。

从那夜起,一直两三天,我见到祖父就怕,我任何时候都在想这个题的算法,弄得吃、玩、睡都惝怳。最终还是我的哥哥将算这个题目的秘诀告诉了我,而且说,这叫“韩信点兵”。虽然我对这道题十分懊丧,却慢慢地把它抛到了脑后。

现在想起来,那次遭遇以及祖父所给我的教训实在是我的年龄不应当承受的。不过这样的硬教育,对于我也有很大的功劳,我对于数学能有较浓厚的兴趣,一半固然由于别人所给的积极的鼓励;而一半也由于这些我所承受不起的遭遇和教训。数学有时会叫人头痛,然而经过一次头痛,总有一次进步。这次的遭遇,对于本问题,我自己虽是一无所得,但对于思索问题的途径,确实得到了不少启示。在当时,有些自以为有了理解的,虽也不免不切实际或错误,但毕竟增长了一些趣味和能力。因此我愿以十二分的诚意,将这段经过叙述出来,以慰勉一部分和我有类似遭遇的读者。

现在我们言归正传。

所谓“韩信点兵”,指的是那位盐老板给我出的题目的算法。“韩信点兵”这个名词虽是到了明时程大位的《算法统宗》才见到的。但这个问题在中国数学史上很有来历,到了卖盐老板都知道,也可以当得起“妇孺皆知”的荣誉了。

这题目最早见于《孙子算经》,《孙子算经》是什么时候什么人所作的书,现在虽然难以考证,大约是二千多年前的作品确实是不容怀疑的。在《孙子算经》上,这题目原是这样的:“今有物不知数,三三数之,剩二;五五数之,剩三;七七数之,剩二,问物几何?”

在原书中本归在《大衍求一术》中,到了宋时,周密的书中却有《鬼谷算》和《隔墙算》的名目,而杨辉又称之为“剪管术”,在那时便有秦王暗点兵的俗名,大约韩信就是从秦王变来的,至于“明点”“暗点”本没有多大关系。

原书上,跟着题目便有下面的一段:

“答曰二十三。”

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

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

后一小段可以说是这类题的基本算法,而前一小段是本问题的解答,用现在的式子写出来便是:

照前面的说法,自然是士大夫气很重,也可以说是讲义体,一般人当然很难明白,但到了周密的书中便有了诗歌形式的说明,那诗道:

“三岁孩儿七十稀,五留廿一事尤奇。

七度上元重相会,寒食清明便可知。”

这诗虽然容易记诵,但意义不明,而且说得也欠周到。到了程大位,它就改了面目:

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

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

这诗流传得非常广,所以如卖盐老板之流也都知道,而我的哥哥所告诉我的秘诀就是它。

是的,知道了它,这类的题目便可以机械地算了,将三除所得的余数去乘七十,五除所得的余数去乘二十一,七除所得的余数去乘十五,再把这三项乘积相加。如所得的和比一百零五小,那便是所求的答数;不然,则减去一百零五的倍数,而得出比一百零五小的数来——这里所要求的只是一个最小的答案——例如三三数之剩一,五五数之剩四,七七数之剩三,那么,运算的步骤便是:

若单只就实用或游戏说,熟记这秘诀已够用了。至于它是从哪儿来的,一般人哪儿管这么多?但就数学的立场来说,这种知其然而不知其所以然的态度却没有多大价值,即使熟记这秘诀,所能应付的问题不过一百零五个,因为只限于三三、五五、七七三种数法。我们要默记这一百零五个答数并不是不可能,然而如果真的熟记这一百零五个答数,那就无意味了。(见附注)

所以我们第一要问,为什么这样就是对的?

要说明其中的理由,我们先记起算术里面关于倍数的两个定理:

(一)某数的倍数的倍数,还是某数的倍数——这正如我的哥哥的哥哥还是我的哥哥一般。

(二)某数的若干倍数的和,还是某数的倍数——这正如我的几个哥哥坐在一起,他们仍然是我的哥哥一般。

依照这两个定理来检讨上面的算法,设R3表示用三除所得的余数,R5和R7相应地表示用五除和用七除所得的余数,那么:

(一)七十是五和七的倍数,而是三的倍数多一,所以用R3去乘仍是五和七的倍数,而是三的倍数多R3。

已完结热门小说推荐

最新标签