鸡兔同笼问题大全和解决方案(鸡兔同笼问题详细讲解)
在生活中,很多人可能想了解和弄清楚“鸡兔同笼”问题,简单易懂的4种解法,却不容易想到的相关问题?那么关于鸡兔同笼问题大全和解决方案的答案我来给大家详细解答下。
相信不少人都听说过著名的“鸡兔同笼”问题,对无忧无虑的小学生来说,心理阴影不至于,但绝对是个巨大的挑战。问题是这样的:在一个笼子里,有鸡和兔子两种动物,两种动物脑袋共35个,脚一共94只,那么鸡和兔子分别各多少只呢?
当然啦,题目中的鸡和兔子都是正常的,没有残疾,也没有三头六臂。基于此,老老实实的考虑怎么才能算出答案呢?
《孙子算经》的解法
事实上,这个问题最早出现于《孙子算经》,并给出了一个解法:
所有动物的脚数除以2,得47;每只鸡有一对脚,兔子有两对脚。假设笼子里全部是鸡的话,脑袋35个,脚也应该是35对,而事实上有47对脚。如果把一只鸡换成一只兔子的话,47-35=12,说明需要12只鸡被替换为兔子,于是得到兔子的数目。鸡的数目自然就是35-12=23只了。对于上面的解法,理解起来也并不那么轻松,尤其对于小学生来说。我估计很多人在看完这个答案的时候,心里暗暗的佩服:这个解法真“孙子”!
有趣的算法
如果说一声令下,让每只鸡都金鸡独立,每只兔子也双脚站立卖萌。此时着地的脚一共是47只,而脑袋是35个;其中一只鸡头对应一个脑袋,一个兔头对应两只脚;那么脚的数量减去头的数量就是兔子的个数啦,兔子数目知道了,鸡的数量自然也就知道了;因此兔子12只,鸡23只。
有人质疑一声令下,说假如能让鸡单脚着地的话,为什么不直接让鸡报数?好啦,做人要厚道,这个问题就留给我们敬爱的、伟大的生物学家吧!事情不能做绝,也得给别人一碗饭吃。
然而,无论是《孙子算经》的算法,还是能和小动物沟通,都是结合了这个具体的背景,给出了具体的解法。假如说笼子里放几只蜈蚣的话,还像上面的算法那么算的话,估计谁算谁骂街。数学的使命,就是抛开具体事物,只研究其数量关系,找到通用的、一般的算法。
机械地尝试
如果我把题目改一下:在一个笼子里,关着鸡和兔子,两种动物的的脑袋一共是2个,脚一共是6个,问鸡和兔子分别有几只?
我相信很多人一瞬间,就得到答案了。那么如果改成一共3个头,8只脚呢?应该也会有比较多的小学生能得到答案。而这个思维过程其实很简单:尝试!如果笼子里小动物的数量少,试一两次就得到答案啦;如果数量大了,懒惰的我们就忽略了这种算法。
仍然考虑原问题中的笼子,通过尝试的方法,毫无疑问是要尝试更多次的:
假如是1只鸡,34只兔子,那么脚一共是1×2+34×4=138>94,不对;假如是2只鸡,33只兔子,那么脚一共是2×2+33×4=136>94,不对;假如是3只鸡,32只兔子,那么脚一共是3×2+32×4=134>94,不对;……这样一直试到23只鸡,12只兔子,问题得到解决啦;当然,如果从假设1只兔子开始,尝试的次数要少的多。如果说,在上面尝试的过程中,敏锐法察觉到脚的数量是在递减,你可能就会去跳跃的尝试,比如尝试完5只鸡,直接尝试10只鸡……,如此会更快的获得答案。
有些人会不屑,这种算法也叫算法么,我都没抖抖机灵。没错儿,这种算法比上面的两种算法更具一般性,无论笼子里关的是什么小动物都可以这样计算;当然了,这种方法很机械,而且随着笼子里动物数量增多,计算量也在迅速增大。
如果原问题中的笼子有67个,把这67个笼子中的鸡和兔子都放到一个大笼子里,就得到:鸡和兔子的脑袋一共2345个,脚6298只,那么鸡和兔子分别有多少只呢?
此时“尝试”的算法依然奏效,但是计算量就明显增加。面对机械的计算,有没有什么好办法呢?有!善良实在的计算机就登场了,它可以毫无怨言的按照“尝试”的算法,快速计算出鸡和兔子的数量。当然这个机械式的“尝试”算法可以做改进,这是另外一个话题。
方程
问题到此还远没结束呢。再如果把笼子换成农场,农场里除了鸡和兔子,还有鸭子、大鹅、肥猪、羔羊……,同样考虑求每种牲畜的数量问题,即便是动物总数量不算大,问题显然是更复杂了。那么,有没有更一般的方法,能解决这类问题。这就是方程或方程组的意义啦!
对于鸡兔同笼问题,转化为二元一次方程组,问题转化为求解方程组的问题,而不需要再考虑笼子里是鸡还是狗。
有了方程的解法,我们自然不会再采用上面那些具体的、烧脑的算法,包括机械的尝试算法。即使是计算机,也不该放着更高效的算法不用呀!当然计算量很大、机械的原始算法,可能不适合真正用于实际,但其逻辑的合理性,用于逻辑论证是毫无问题的!
温馨提示:通过以上关于“鸡兔同笼”问题,简单易懂的4种解法,却不容易想到内容介绍后,相信大家有新的了解,更希望可以对你有所帮助。