巧解民间数学趣题 注释中国古代名题
河南省太康县城关镇建南小学(461400) 师亚军
民间盛传的“牲口驮瓦”趣题与中国古代的“百鸡问题”
在民间盛传着这样一道“牲口驮瓦”的数学趣题:一百牲口一百瓦,骡子驮仨马驮俩,三驴共驮一个瓦,几骡几驴几匹马?
此题的音韵琅琅上口,叙述的情节生动有趣,给定的数据整齐奇巧。在民间,此题一般由富有智慧的老者口传,总能激发不少听众的兴趣和探索欲望。
“牲口驮瓦”趣题与“百鸡问题”一样,现代人一般需要求三元一次不定方程组的整数解。
百鸡问题:今有鸡翁一,值钱伍;鸡母一,值钱三;鸡鶵三,值钱一。凡百钱买鸡百只,问鸡翁、母、鶵各几何?答曰:鸡翁四,值钱二十;鸡母十八,值钱五十四;鸡鶵七十八,值钱二十六。又答:鸡翁八,值钱四十;鸡母十一,值钱三十三,鸡鶵八十一,值钱二十七。又答:鸡翁十二,值钱六十;鸡母四、值钱十二;鸡鶵八十四,值钱二十八。
原书说明:原书《张邱建算经》没有给出解法,只说如果少买7只母鸡,就可多买4只公鸡和3只小鸡。所以只要得出一组答案,就可以推出其余两组答案。中国古算书的著名校勘者甄鸾和李淳风注释该书时都没给出解法,只有约6世纪的算学家谢察微记述过一种不甚正确的解法。到了清代,研究百鸡术的人渐多,1815年骆腾风使用大衍求一术解决了百鸡问题。1874年丁取忠创用一个简易的算术解法。在此前后时曰醇(约1870)推广了百鸡问题作《百鸡术衍》,从此百鸡问题和百鸡术才广为人知。百鸡问题还有多种表达形式,如百僧吃百馒,百钱买百禽等。宋代杨辉算书内有类似问题,中古时近东各国也有相仿问题流传。例如印度算书和阿拉伯学者艾布·卡米勒的著作内都有百钱买百禽的问题,且与《张邱建算经》的题目几乎全同。
“百鸡问题”用现代的语言叙述为:公鸡每只值5 文钱,母鸡每只值3 文钱,而3 只小鸡值1 文钱。现在用100 文钱买100 只鸡,问:这100 只鸡中,公鸡、母鸡和小鸡各有多少只?
现代解法:这个问题流传很广,解法很多,但从现代数学观点来看,实际上是一个求不定方程整数解的问题。解法如下:
设公鸡、母鸡、小鸡分别为x、y、z 只,由题意得:
①……x+y+z =100
②……5x+3y+(1/3)z =100
有两个方程,三个未知量,称为不定方程组,有多种解。
令②×3-①得:7x+4y=100; 所以y=(100-7x)/4=25-2x+x/4
令x/4=t, (t为整数)所以x=4t
把x=4t代入7x+4y=100得到:y=25-7t 易得z=75+3t
所以:x=4t y=25-7t z=75+3t
因为x、y、z>0 ,所以4t>0 ,25-7t>0 ,75+3t>0
解得:25/7>t>0,又因为t为整数 ,所以t=1、2、3
当t=1时 ,x =4;y =18;z =78
当t=2时 ,x =8;y =11;z =81
当t=3时 ,x =12;y =4;z =84
巧解“牲口驮瓦”趣题
对于民间盛传的数学趣题,如果用不定方程来解,恐怕就会失去它的生命力,失去它的娱乐性,这也为民间“智慧的老者”所不齿。作为数学教师,我们有责任寻找让民众满意的解法,让爱好数学的小学生及学生家长易于接受。
下面笔者利用“平均问题的移多补少”思想和“数的整除”性质来解答“牲口驮瓦”趣题。
一百牲口一百瓦,平均每个牲口驮瓦:100÷100=1(个)。每个骡子驮3个瓦,比平均数多驮瓦:3-1=2(个);每匹马驮2个瓦,比平均数多驮瓦:2-1=1(个);3头驴只驮1个瓦,按平均要求,3头驴少驮瓦:3-1=2(个)。
于是,我们想:在这100个牲口中,有1个骡子就要有3头驴来“移补”,有2匹马就要有3头驴来“移补”。也就是说,1个骡子带3头驴分一组,2匹马带3头驴分一组,恰好不剩余。
这样,骡子带驴的总数是(1+3=)4的倍数,马带驴的总数是(2+3=)5的倍数。而牲口的总数是100,是5的倍数(也是4的倍数),那么骡子带驴的总数也是5的倍数(马带驴的总数也是4的倍数)。
骡子带驴的总数既是4的倍数,又是5的倍数,那么1个骡子带3头驴分一组,分的组数应是5的倍数,即组数只能是5、10、15、20;通过计算,2匹马带3头驴分一组,组数分别是16、12、8、4。
四组答案分别是:
1、骡子:1×5=5(个);马:2×16=32(匹);驴:3×(5+16)=63(头)。
2、骡子:1×10=10(个);马:2×12=24(匹);驴:3×(10+12)=66(头)。
3、骡子:1×15=15(个);马:2×8=16(匹);驴:3×(15+8)=69(头)。
4、骡子:1×20=20(个);马:2×4=8(匹);驴:3×(20+4)=72(头)。
“百鸡问题”古解法新注释
“百鸡问题”也可以运用上述解法,先利用“移补”分组,再利用“整除”确定组数。有兴趣的读者可以试一试。
但古人给出“如果少买7只母鸡,就可多买4只公鸡和3只小鸡。所以只要得出一组答案,就可以推出其余两组答案”,这个结论是怎样得出来的呢?
1、利用“鸡兔同笼”的方法解释
母鸡的价钱居中,如果少买母鸡,就要多买公鸡和小鸡。而少1只母鸡,就少用3文钱,换作公鸡和小鸡,总只数是1,总钱数是3。
按照“鸡兔同笼”的解法:假设这1只是公鸡,钱数多(5-3)文;而换成小鸡,换1只,钱数就少(5-1/3)文,因此换成小鸡的只数是(5-3)÷(5-1/3)=3/7(只),而换成公鸡的只数则是1-3/7=4/7(只)。
因为鸡的只数应为整数,所以,如果少买7只母鸡,就要多买7×(4/7)=4(只)公鸡,多买7×(3/7)=3(只)小鸡。
2、多次试算
如果不用分数运算,那么就要多次试算。又因为3只小鸡才1文钱,而钱数是整数,所以,少买母鸡,其中换成小鸡的只数是3的倍数。故此,我们从少买4只母鸡开始试算。
如果少买4只母鸡,则多买公鸡和小鸡共4只,钱数是3×4=12(文);1只公鸡和3只小鸡的钱数不是12文。
如果少买5只母鸡,则多买公鸡和小鸡共5只,钱数是3×5=15(文);2只公鸡和3只小鸡的钱数不是15文。
如果少买6只母鸡,则多买公鸡和小鸡共6只,钱数是3×6=18(文);3只公鸡和3只小鸡的钱数不是18文。
如果少买7只母鸡,则多买公鸡和小鸡共7只,钱数是3×7=21(文); 4只公鸡和3只小鸡的钱数恰好是21文。
大概古人就是这样试算出来。
3、利用“移多补少”的思想解释
母鸡每只3文钱。如果少买母鸡,换作公鸡和小鸡,则平均每只3文钱。而每只公鸡5文钱,比平均数多(5-3)文;每只小鸡1/3文钱,比平均数少(3-1/3)文。根据平均问题的“移多补少”思想得:
公鸡×(5-3)=小鸡×(3-1/3)
根据比例的基本性质得:换成的公鸡与小鸡的比是(3-1/3):(5-3)=4:3
由此得出:如果少买(4+3=)7只母鸡,就要多买4只公鸡和3只小鸡。
4、从3只小鸡1文钱入手(先换3只小鸡试试)
母鸡每只3文钱。把一些母鸡换成公鸡和小鸡,总只数是整数,总钱数是总只数的3倍,也是整数。而3只小鸡才1文钱,为了保证钱数是整数,那么母鸡换成小鸡的只数应是3的倍数。
我们先用3只小鸡算算。3只母鸡换成3只小鸡,钱数少3×3-1=8(文),这需要用公鸡来“移补”,每只公鸡比每只母鸡多5-3=2(文),因此换3只小鸡,就要同时换8÷2=4(只)公鸡。即少买3+4=7(只)母鸡,就要多买4只公鸡和3只小鸡。
5、寻找一组答案
那么怎样先找出一组答案呢?中国古人解题多展现“智巧”,不像现代人常用具有“通解”功能的方程。
“百鸡问题”给定的数据非常巧妙,那就是:母鸡每只值3 文钱,而3 只小鸡值1 文钱。
如果假定公鸡的只数为0,那么此题变为:用100 文钱买100 只鸡,母鸡每只值3 文钱,而3 只小鸡值1 文钱。母鸡、小鸡各有多少只?这与“百僧问题”多么相似:一百馒头一百僧,大僧三个更无争,小僧三人分一个,大小和尚各几人?
这样既可以用假设置换法,又可以用分组求解法。一组答案为:母鸡25只,小鸡75只,(公鸡0只)。这组答案虽显勉强,但再根据“如果少买7只母鸡,就可多买4只公鸡和3只小鸡”便可求出本题的三组标准答案。
发表于《中小学数学》(小学版)2013年第4期