九、韩信点兵(1 / 1)

说起来已将近三十年了,那时我还只八岁,常常随了我的祖父去会他的老友。有一次到一个小盐商家去,他一见了我们祖孙俩走到摊头,一边拉长板凳一边向祖父说:

——请坐,请坐,好福气,四孙少爷这般大了。

——什么福啊!奔忙福!

——哪里,哪里,四孙少爷在进学校了吧!

——不要这般叫,孩子们,今年已随着哥哥进学校了,在屋里淘气得很,还是去找个管头的好。祖父说了,微笑着抚摸我的头。盐老板和他说了一些古话,不知怎的,突然却转到了我的身上:

——在学校里念些什么书?

——国文、算术……我这样地回答。

——还学算吗?好,给你算一个题,算得出,请你吃晚饭。

这使我有点奇怪,我心里猜不透他是叫我算乘法还是除法。我有些惊恐,怕他叫我算四则问题,我目不转睛地看着他,他不慌不忙地说了出来:

——三个三个地数剩两个,五个五个地数剩三个,七个七个地数也剩两个,你算是几个?

我一听心里非常高兴,暗里还有点骄傲:“这样的题目,哪个不会算!”这时我正好学完公倍数公约数,而且不久前还算过这样的一个题目:

“某数以三除之余二,以四除之余三,以五除之余四,以六除之余五,问某数最小是若干?”

我把这两个题目看成是一样的,它们都是用几个数去除一个数全除不尽。这第二个题的算法我还记得十分清楚,所以我觉得很有把握。不但这样,我并且觉得这位老板的题目有些不通,他不曾只问我一个最小的答数。当我这样在肚里寻思的时候,祖父便问道:

——算得出吗?

——算得出,不止一个答数。我这样回答以后,那位老板就恭维起我来了,向着祖父说:

——真好福气!一想就想出来了,将来一定比大老爷还强。

祖父又是一阵客气,然后向着我说:

——你说一个答数看。

我所算过的题,是先求出三、四、五、六四个数的最小公倍数“六十”,然后减去“一”得“五十九”。我于是依样先求三、五、七三个数的最小公倍数,心里暗想着“三五一十五、七五三十五、一百零五”。再就是要减去一个数了。我算过的题因为“以三除之余二”是差个一(3-2=1)就除尽,所以要减去“一”。现在“三个三个地数剩两个”正是一样的,也只要减去“一”,所以我就从一百零五当中减去一,而立刻回答道:

——顶小的一个数是一百零四,还有二百零九(104+105=209)也是的。

我这时,在幼稚的心上感到得意,感到快乐,我期望着老板的夸奖。岂知大出我意料之外!他说:

——一百零四,五个五个地数剩的是四个不是三个。

这我怎么不曾想到呢?于是我想那么应当从一百零五当中减去二了(5-3=2),我就说:

——一百零三。

——三个三个的数只剩一了。

我窘极了,居然遭了这么大的失败。在我小时学数学,所遇到的窘迫,这是最大的两次当中的一次,我觉得当着人失败,非常害羞。我记得很清楚,我一只手扯了衣角,一只手捏紧拳头,脸上如火烧一般地热,低了头尽管在心里转念头,把我所算过的题目都想到。但是徒然,再和它相像的一个也没有了。我后来横了心,很胆大地说:

——恐怕题目出错了吧!

然而得到的是一个更加使我窘迫的回答:

——不错的。

连我的祖父也这样说。

穷极智生,我居然得到了一条新路,我想三个去除剩两个,五个去除剩三个,我可以先找三个去除剩两个的一些数再一个一个地拿五去除来试。这真是一条光明的路,第一个我想到“五”,这自然不对,用五去除并没有剩的。挨了下去再就想到“八”,正好用三去除剩二,用五去除剩三。我真喜出望外:

——八!

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

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

——读书要用心!……在别人的面前不好夸口!……“宁在人前全不会,勿在人前会不全!”小小年纪晓得些什么?别人问到就说不知道好了……这时他的脸上严肃中还带得有几分生气的样儿。他给我这样的教训时,我的母亲、婶母、哥哥都在旁边的,他后来慢慢地将我的遭遇说给他们听,我的哥哥听他说完了题目便冲口而出地:

——二十三。

我非常不服气,

——别人告诉过你的!

——还这样不上进,祖父真生气了。

从那夜起,一直两三天,我见到祖父就怕,我没有一个时候不想这个题的算法,真弄得吃、玩、睡都是惝恍的。终于还是我的哥哥把算这个题目的秘诀告诉了我,而且说,这叫“韩信点兵”。这我才虽是十分懊丧,却慢慢地丢开了去。

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

现在我们言归正传。

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

这题目最早是见于《孙子算经》,《孙子算经》确实是什么时候什么人所作的书,现在虽然难以考证,大约是二千多年前的作品确实是不容怀疑。在《孙子算经》上,这题目原是这样的:

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

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

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

“答曰二十三。”

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

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

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

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

233-105×2=233-210=23

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

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

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

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

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

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

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

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

70×1+21×4+15×3=70+84+45=199

199-105=94

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

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

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

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

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

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

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

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

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

(四)所以这三项相加,就三说,是

70×R3+21×R5+15×R7=3的倍数+R3+3的倍数+3的倍数=3的倍数+R3。

若用三去除,所得的余数正是R3。就五说,是

70×R3+21×R5+15×R7=5的倍数+R5+5的倍数+5的倍数=5的倍数+R5。

若用五去除,所得的余数正是R5。就七说,是

70×R3+21×R5+15×R7=7的倍数+R7+7的倍数+7的倍数=7倍数+R7。

若用七去除,所得的余数正是R7。

这就可以证明我们如法炮制出来的数是合题的。至于在比一百零五大的时候,要减去它的倍数,使得数小于一百零五,这只因为适合于题目的答数本来无穷,只得取最小的一个做代表的缘故。一百零五本是三、五、七的最小公倍数,在这最小的答数上加入它的倍数,这是和除得的余数无关系的。

经过这样的证明,我们可以承认上面的算法是对了,但这还不够,我们第二要问,那七十、二十一和十五三个数含有怎样的性质?

七十是五和七的公倍数,而二十一是七和三的最小公倍数,十五是三和五的最小公倍数,为什么两个是最小公倍数而另一个却只是公倍数呢?

这个问题并不难回答,因为二十一用五除,十五用七除都恰好剩一,而五和七的最小公倍数“三十五”用三除却剩的是二,要七十用三除才剩一。所以这个解法的要点,是要求出三个数来,每一个都是三个除数中的两个的公倍数——最小公倍数是碰巧的——而同时是另一个除数的倍数多一。

这样,就到了第三步,我们要问,合于这种条件的数怎样求法?

这里且将清时黄宗宪所编《求一术通解》里面的方法摘抄在下面,我们来认识认识中国数学书的面目,也是一件趣事。

“三位泛母俱是数根,不可拆,即为定母。连乘之,得一〇五为衍母。以一行三除之,得三十五为一行衍数;以二行定母五除之,得二十一为二行衍数;以三行定母七除之,得一十五为三行衍数。”

这里所谓泛母,用不到解释,便可明白。析母就是将泛母分成质因数,至于定母,便是各泛母所单独含有的质因数的积。若是有一个质因数是两个以上的泛母所共有的,那么只是含这个质因数的个数最多的泛母用它;若是两个泛母所含这质因数的个数相同,那么随便在哪一个泛母用它都可以。注意后面的另一个例子——衍母是各定母的连乘积,也就是各泛母的最小公倍数。衍数是用定母除衍母所得的商。

得了定母和衍数,就可以求乘率,所谓乘率便是乘了衍数所得的积恰等于泛母的倍数多一的数,而这个乘积称为用数。求乘率的方法,在《求一术通解》里面是这样说的:

“列定母于上行,列衍数于下行(左角上预寄一数),辗转累减,至衍数余一为止,视左角上寄数为乘率。

“按两数相减,必以少数为法,多数为实。其法上无寄数者,不论减若干次,减余数上仍以一为寄数(1)。其实上无寄数者,减余数上以所减次数为寄数(2);其法、实上俱有寄数者,视累减若干次,以法上寄数亦累加若干次于实上寄数中(3);即得减余数上之寄数矣。”

照这个法则,我们来求所要的各乘率,为了容易明白,我将原式的中国数码改成了阿拉伯数字:

定母3311

衍数135121221

所以乘率是2。

定母5

衍数12111

所以乘率是1。

定母7

衍数11511

所以乘率是1。

依原书所说,是用累减法,但累减便是除,为什么不老老实实地说除,而要说是累减呢?这个理由是因为最后衍数这一行必要保留一个余数1——所以即使除得尽也不许除尽,因此说除不如说累减来得统一。但我们这时要说明,还是用除好些。我们就用除法来检查这个计算法,如第一式,衍数35左角上的1,就是所谓预寄的一数,表示用一个衍数的意思,因为定母3比衍数35小,用3(法)去除35(实)得11剩2;照(1)法上无寄数,仍以1为余数2的寄数,所以2的左角上写1。接着以2(法)除3(实)得1(商)剩1;照(2)实上无寄数,以所减次数(即商数)为余数的寄数,所以1的右角上还是1。再用这1(法)去除2(实),本来是除得尽的,但应当保留余数1,因此只能商1而剩1。照(3)法、实都有寄数,应当以商数1乘法数1的寄数1加上实数2的寄数1得2,为余数1的寄数,而它便是乘率。

第一次的余数2=35-3×11

第二次的余数1=3-2×1=3-第一次的余数×1=3-(35-3×11)×1

第三次的余数1=2-1×1

=第一次的余数-第二次的余数×1

=35-3×11-[3-(35-3×11)×1]×1

=35-3×11-3×1+35×1-3×11×1×1

=35×(1+1)-3×(11+1+11)

=35×2*-3×23

就是3×23=35×2-1

上式中“*”表示所求得的乘率,黑体字表示每次的寄数。你看这求法多么巧妙!现在用代数的方法一般地证明如下。设A为定母,B为衍数,a0、a1、a2,…、an为各次的寄数,r0、r1、r2、…、rn为各次的余数,而rn等于1,依上面的式子写出来便是:

而r0=B-t0A

r1=A-a1r0=A-a1(B-t0A)=A-a1B+a1t0A

=t1A-a1B

t1=a1t0+1

r2=r0-q2r1=(B-t0A)-q2(t1A-a1B)=B-t0A-q2t1A+q2a1B

=a2B-t2A

a2=q2a1+a0

t2=q2t1+t0

r3=r1-q3r2=(t1A-a1B)-q3(a2B-t2A)

=t3A-a3B

a3=q3a2+a1

t3=q3t2+t1

…………………………

∴rn=anB-tnA

an=qnan-1+an-2

tn=qntn-1+tn-2

但rn=1

∴1=anB-tnA

就是anB=tnA+1

有了乘率,将它去乘衍数就得用数,上面已经证明了,所以在本例题,三、五和七的用数相应地便是七十(35×2)、二十一(21×1)和十五(15×1)。

杨辉的“剪管术”中,同样的题目有好几个,试取两个照样演算于下。

(a)七数剩一,八数剩二,九数剩三,问本数几何?

(一)求衍数

泛母析母定母衍母衍数

77750472

88863

99956

(二)求乘率

定母7713

衍数172121241

所以乘率是4。

定母8811

衍数163171771

所以乘率是7。

定母9914

衍数156121251

所以乘率是5。

(三)求用数,就是将相应的乘率去乘衍数,所以七、八、九的用数相应地为二百八十八(72×4),四百四十一(63×7)和二百八十(56×5)。

(四)求本数,就是将各除数所除得的剩余相应地乘各用数,而将这三个乘积加起来。倘若这所得的和比七、八、九的最小公倍数五百零四大,就将五百零四的倍数减去,也就是用这最小公倍数除所得的和而求余数。

因而288×1+441×2+280×3=288+882+840=2010

2010÷504=3余498

所以四百九十八便是本数。

(b)二数余一,五数余二,七数余三,九数余四,问原总数几何?

(一)求衍数

泛母析母定母衍母衍数

222630315

555126

77790

99970

(二)求乘率

定母2

衍数131511

所以乘率是1。

定母5

衍数112611

所以乘率是1。

定母7711

衍数190161661

所以乘率是6。

定母9921

衍数170171741

所以乘率是4。

(三)求用数

2的……315×1=315,5的……126×1=126,

7的……90×6=540,9的……70×4=280。

(四)求本数

315×1+126×2+540×3+280×4=315+252+1620+1120=3307

3307÷630=5……157

所以原总数是一百五十七。

再由《求一术通解》上取一个较复杂的例子,那更可以看明白这类题的算法了。

“今有数不知总:以五累减之,无剩;以七百一十五累减之,剩一十;以二百四十七累减之,剩一百四十;以三百九十一累减之,剩二百四十五;以一百八十七累减之,剩一百零九,问总数若干?”

“答:10020。”

(一)求衍数

泛母析母定母衍母衍数

55废位5311735

7155·×11·×135596577

24713·×19·24721505

39117·×23·39113585

18711×17废位

(二)求乘率

定母555531

衍数196577152152181

所以乘率是18。

定母2472477157151108

衍数1215051161163123121391

所以乘率是139。

定母3913911001100194

衍数11358512911291391391431

所以乘率是43。

(三)求用数

715的……96577×18=1738386

247的……21505×139=2989195

391的……13585×43=584155

(四)求总数

1738386×10+2989195×140+584155×245

=17383860+418487300+143117975

=578989135

578989135÷5311735=109……10020

这个计算所要注意的就是“废位”,第一行的析母5,第二行也有,第二行已用了(数旁记黑点就是表示采用的意思),所以第一行可废去。又第五行的11和17一个已用在第二行,一个已用在第四行,所以这一行也废去。前面已经说过两个泛母若有相同的质因数而且所含的个数相同,无论在哪个泛母采用都可以的,因此上面的求衍数的方法中的一种,在《求一术通解》里,就附有下列每种采用法的表,比较起来这一种实在是最简单的了(表中的○表示废位)。

析母55×11×1313×1917×2311×17

定母○55247391○1

○71519391○2

○5524723173

○7151923174

○5147391115

○6519391116

○5247231877

○6519231878

511247391○9

514319391○10

511247231711

514319231712

5○2473911113

513193911114

5○2472318715

513192318716

由这几个例子,可以看出“韩信”的点兵不限于三三,五五,七七地数。在中国的旧数学上,“大衍求一术”还有不少的应用,不过在这篇短文里却讲不到了。

到了这一步,我们可以问:“‘韩信点兵’这类的问题在西洋数学中怎样解决呢?”

要回答这个问题,你先要记起代数中联立方程式的解法来。不,首先要记起一般联立方程式所应具的必要条件。那是这样的,方程式的个数应当和它们所含未知数的个数相等,所以二元的要有两个方程式,三元的要有三个,倘使方程式的个数比它们所含未知数的个数少,那就不能得出一定的解答,因此我们称它为不定方程式系。

两个未知数而只有一个方程式,例如,

5x+10y=20

我们若将y当作已知数看,依照解方程式的顺序来解便可,而且也只能得下面的式子:

x=4-2y

在这个式子当中任意用一个数去代y,x都有一个相应的数值,如:

y=0,x=4-2×0=4;y=1,x=4-2×1=2;

y=2,x=4-2×2=0;y=3,x=4-2×3=-2;

y=-1,x=4-2×(-1)=6;…………

y的数值既可任意地定,所以这方程式的根便是不定的。

又三个未知数,而只有两个方程式,比如:

x+y-3z=8……(1)

2x-5y+z=2……(2)

依照解联立方程式的法则,从这两个方程式可以随意先消去一个未知数。若要消去z,就用3去乘(2)而和(1)相加,便得:

6x-15y+3z+x+y-3z=6+8

7x-14y=14

再移含有y的项到右边,并且全体用7去除,就得:

x=2+2y

照前例同一的理由,这方程式中y的值可以任意选用,所以是不定的,而x的值也就不定了,x和y的值都不一定,z的值跟着更是不定,如:

y=1,x=4,代入(1)z=-1 代入(2)z=-1;

y=2,x=6,代入(1)z=0 代入(2)z=0;

………………

就这种情形推下去,联立方程式的个数只要比它们所含的未知数少,就得不出一定的解答来。

这样说起来,不定方程式系不是一点儿用场都没有了吗?这个疑问自然是应当有的,不过用场的有无实在难说。和尚拾着常州梳子自然没用,但若是江北大姐拾着,岂不喜出望外仔细考察起来,不定方程式系虽然没有一定的解答,但它却将所含的未知数间的关系加上了限制。即如第一个例子,x和y的数值虽然不定,但若y等于0,x就只能等于4;若y等于1,x就只能等于2。再就第二个例子说,也有同样的情形。这种关系倘若再得到别的条件来补充,那么,解答就不是漫无限制了,本来一个方程式也不过表示几个未知数在某种情形所具的关系,也就只是一个条件。

我们就用“韩信点兵”的问题来做例子吧。

设三三数所数的次数为x,五五数所数的次数为y,七七数所数的次数为z,而原数为N,则:

N=3x+2=5y+3=7z+2

∴3x+2=5y+3……(1)

3x+2=7z+2……(2)

这有三个未知数而只有两个方程式,但我们应当注意x,y,z都必须是正整数,这便是一个附带的条件,

∴α-1=2β,α=2β+1

∴y=α+β=2β+1+β=3β+1,

x=y+α=3β+1+2β+1=5β+2

而N=3x+2=3(5β+2)+2=15β+8,

由(2)15β+8=7z+2,∴7z=15β+6,

∴β+6=7γ,β=7γ-6

N=7z+2=7(15γ-12)+2=105γ-82

现在γ既是整数,而且不能是负的。因为它若是负的,N也便是负的,对于题目说便没有意义了。所以γ至少须是1,而

N=105-82=23

自然γ可以是2、3、4、5、6,……而N随着便是128、233、338、443、548,……但N的值虽无穷却有一个限制。

既说到代数的不定方程式,无妨顺着再说一点。

(a)解方程式3x+4y=22,x和y的值限于正整数,先将含y的项移到右边,则得

3x=22-4y

∴y=1-3α,(1)

x=7-(1-3α)+α=6+4α(2)

由(1)y既是正整数,α也是整数,所以α或是等于零或是负的,绝不能是正的。

由(2)x既是正整数,α也是整数,所以α应当是正的或是等于零,最小只能等于负1。

合看这两个条件α只能等于零或负1,而

α=0,x=6,y=1;

α=-1,x=2,y=4。

(b)解方程式5x-14y=11,x和y的值限于正整数。

移项5x=11+14y,

这里和前例也有点不同,由(1)和(2)看来α只要是正整数就可以,不必再有什么限制,所以

α=1,x=5,y=1;

α=2,x=19,y=6;

α=3,x=33,y=11;

…………

这样的解答是无穷的。

将中国的老方法和现在我们所学的新法两相比较,究竟哪一种好些,这虽很难说,但由此可以知道,一个问题的解法绝不只是一种。当学习数学的时候,能够注意别人的算法以及自己另辟蹊径去走,都是有兴味而且有益处的。中国的“求一术”不但在中国数学史上占着很重要的位置,若能发扬光大,正有不少的问题可以研究。

[附注]一个数用3去除,有三种情形:一是剩0(就是除尽),二是剩1,三是剩2。同样地,用5去除有五种情形,剩0、1、2、3、4。用7去除有七种情形,剩0、1、2、3、4、5、6。从3除的三种情形中任取一种,和5除的五种情形中的任一种,以及7除的七种情形中的任一种配合,都能成一个“韩信点兵”的题目,所以一共有3×5×7=105个题。而这105个题的最小答数,恰是从0到104这105个数,把它们排列起来可以得出下面的表。

00

1

2

3

4

5

60

15

30

45

60

75

9021

36

51

66

81

96

642

57

72

87

102

12

2763

78

93

3

18

33

4884

99

9

24

39

54

69

10

1

2

3

4

5

670

85

100

10

25

40

5591

1

16

31

46

61

767

22

37

52

67

82

9728

43

58

73

88

103

1349

64

79

94

4

19

34

20

1

2

3

4

5

635

50

65

80

95

5

2056

71

86

101

11

26

4177

92

2

17

32

47

6298

8

23

38

53

68

8314

29

44

59

74

89

104

这个表的构造是这样的:

(1)R3的一行的0、1、2表示三个三个地数的余数。

(2)R7的一行的0、1、2、3、4、5、6表示七个七个地数的余数。

(3)R5的一排的0、1、2、3、4表示五个五个地数的余数。

(4)中间的数便是105个相当的答数。

所以如说三数剩二,五数剩三,七数剩二,答数就是第三大横排的第六竖列的第三数,二十三。如说三数剩一,五数剩二,七数剩四,答数便是第二大横排的第五竖列的第五数,六十七。

表中各数的排列,仔细观察,也很有趣:

(1)就三大横排说,同竖列同小排的数次第加70——超过105则减去它——正是泛母三的用数。

(2)就每一小横排说,次第加21——超过105则减去它——正是泛母五的用数。

(3)就每大横排中的各竖列说,次第加15——超过105则减去它——正是泛母七的用数。

这个理由自然是略一思索就会明白的。