加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

孙子算经

(2008-01-27 12:11:09)
标签:

数学思想

儿童少年教育

趣味数学

教育

妞妞的作业总是犯一些小的错误,这让爸爸和妞妞都很沮丧,不过每次爸爸提醒之后,妞妞又能很快找到错误之处,其实这还是粗心大意产生的毛病。这一天妞妞写完数学作业,交给爸爸检查,爸爸又发现了两处非常明显的错误,爸爸有点恼火,对妞妞说:“15+8 怎么成了33呢?两个分数的差距,为什么需要用1来减它们的和呢?”

妞妞讪讪的,低着头不说话。“拿回去自己改正吧!希望以后作完题之后,自己检查验算一下。爸爸的检查并不是必须的,如果你的题自己不检查,爸爸也不再给你检查了。”

很快妞妞的更正完成了,还不错,全对了。“爸爸知道妞妞的作业有些多,但是越是这个时候越需要我们的心静下来。如果只图快,反而会误事的。”爸爸的话语重心长。

妞妞点点头。爸爸接着说:“我们今天的趣味数学要讲一个古老的数学题‘有物不知其数’。这个题有多老呢?它最早出现在公元四世纪的数学著作《孙子算经》里面,也就是离现在一千六百多年以前。”

“哦,这么久呀!”妞妞的声调里露出许多的惊讶。

“那个时候的我们的古人在数论方面的成就是世界领先的,这种领先直到十八、十九世纪,才由大数学家欧拉(1707—1783)和高斯(1777—1855)超过。今天我们就来讲讲数论中的一个问题。问题不难,你准能听懂。”

数学家们解决的问题自己也能听懂?妞妞来了精神,两只眼睛亮亮的看着爸爸。

“题目是这样的。‘有物不知其数,三个一数余二,五个一数余三,七个一数又余二,问该物总数几何?’意思是说有一样东西,不知道有多少个,三个三个来数,余二个;五个五个来数,余三个;七个七个来数,余二个。问它有多少个?”

妞妞听完后思考了一会儿,说道:“这个问题我会做。”说着在纸上写下了下面的运算过程:

3的倍数多2可以是:2,5,8,11,14,17,20,2326,29,32,35

5的倍数多3可以是:3,8,13,18,2318,33,38,43,48

7的倍数多2可以是:2,9,16,2330,37,44,51,58,65

“注意到它们有共同的值23,所以23 是满足这三个条件的最小的答案。”妞妞对爸爸说。

“非常正确。这种问题在数学上叫不定方程组,所谓不定方程组就是未知数多于方程数,有无穷多个解的方程组。比如像刚才这个问题,我们可以设这个数字是N, 这个方程组就是N=3*N1+2,X=5*N2+3,X=7*N3+2,其中N1,N2,N3都是整数。这个方程组有四个未知数,只有三个方程,有无数组解。比如23、128、233都可以满足问题的要求,不信妞妞可以试一试。”

妞妞用233分别除以3,5,7,结果确实就像爸爸说的。“还有什么样的数字可以满足这个问题的要求呢?”

爸爸笑着说:“我们古人对着一个问题的研究直接就导致了现代数论中的剩余定律。古人有一首诗‘孙子歌’就是说的对这个问题的解答。‘三人同行七十稀,五树梅花廿一枝,七子团圆正半月,除百零五便得知。’把数字藏在诗歌里面,七十稀”、“廿一枝”和“正半月”,就是暗指三个关键的数字70,21,15。三三数之,取数七十,与余数二相乘;五五数之,取数二十一,与余数三相乘;七七数之,取数十五,与余数二相乘。将诸乘积相加,然后减去一百零五的倍数。能减多少个105就减多少个,这样就能获得最小解。列成算式就是:N=70×3+21×3+15×2-2×105=23。换句话说,23之后每隔105就有一个解。”

“哦,这是因为105是3、5、7的最小公倍数吧!”妞妞的理解能力确实在加强。

“对!余数其实还是可以变动的,《孙子算经》也说到只要把上面算法中的余数分别换成新的余数就行了。以R1、R2、R3表示这些余数,那么《孙子算经》给出了通用的公式

N=70×R1+21×R2+15×R3-P×105(N, p是整数)。妞妞可以任意去试,决不会有错。只是我们谁都会问这三个关键性的数字又是如何来的呢?这个标准公式又是如何获得的呢?”

妞妞听得很认真,一言不发地点点头,聚精会神地看着爸爸。爸爸在纸上写下如下的算式:

70=2*(3*5*7)/3,这个数字除3余1

21=1*(3*5*7)/5,这个数字除5余1

15=1*(3*5*7)/7,这个数字除7余1

“也就是说,这三个数可以从最小公倍数M=3×5×7=105中各约去模数3、5、7后,再分别乘以整数2、1、1而得到。假令k1=2,K2=1,K3=1,那么整数Ki(i=1,2,3)的选取使所得到的三个数70、21、15被相应模数相除的时候余数都是1。由此出发,立即可以推出,在余数是R1、R2、R3的情况下。”爸爸接着写道:

R1*k1*M/3=R1*2*(3*5*7)/3=70*R1,被3除余数是R1,同时可以被5和7整除

R2*k2*M/3=R2*1*(3*5*7)/5=21*R2,被5除余数是R2,同时可以被3和7整除

R3*k3*M/3=R3*1*(3*5*7)/7=15*R3,被7除余数是R3,同时可以被3和5整除

“所以R1*k1*M/3 + R2*k2*M/3 + R3*k3*M/3 = 70*R1+21*R2+15*R3必定可以满足除3,5,7分别余R1,R2,R3。对不对?”

“对呀!好奇妙耶!这就像是设计出来的!”妞妞拍了好几下手,兴奋得直想跳。

“这个数字不能保证它是最小的解,所以就需要减掉它们的公倍数105,能减多少个就减多少个,直到结果比公倍数小为止。70×R1+21×R2+15×R3-P×105这就是这个解的构造过程。”

“这就是剩余定律吗?”妞妞问道。

“这还只是剩余定律的一个简本。假设有一数N,分别被两两互素的几个数a1、a2、……an相除得余数R1、R2、……Rn。设M=a1×a2×……×an。我们首先需要求出一组数Ki,i=1,2,… n使它们满足 ( Ki * M/ai ) 除ai时余数是1,

那么最小正整数解就是

   N=(R1*K1*M/a1 + R2*K2*M/a2 + …+Rn*Kn*M/an)- P*M

(P是整数),这就是现代数论中著名的剩余定理。也被世界上数学家公称为‘中国剩余定理’,以纪念我们的祖先在这方面的卓越的贡献。”

妞妞问:“这个公式看上去确实非常美,有一点我不太懂,什么是互素呢?”

“互素就是他们彼此没有公约数(除了1之外),两两互素就是任何两个数字都没有公约数。只有这样才能保证公式的正确。妞妞能不能够用这个公式完成下面的一个题目呢?”爸爸交给妞妞一张纸,上面有这样一个题目:

有一个数,除5余3,除7余额,除11余7,除13 余6,请问这个数最小是多少?

0

阅读 收藏 喜欢 打印举报/Report
前一篇:密码 II
后一篇:奇妙的分形
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有