
上一节:
<<【python】 学了编程、我写的第二个游戏...>>
鸡兔同笼,是中国古代著名典型趣题之一,记载于《孙子算经》之中。鸡兔同笼问题,是小学奥数的常见题型。
不知道你们会不会算呢?

鸡兔同笼问题
《孙子算经》书中是这样叙述的:
今有雉兔同笼
上有三十五头
下有九十四足
问雉兔各几何
# 解释 #
“现在有鸡和兔子同在一个笼子里”
“从上面数,有35个脑袋瓜子”
“从下面数,有94个大猪蹄子”
“问你,鸡兔各有多少只”
---------------------------
| |
| |
| |
| |
| |
----------------------------|
这题目是小学奥数里经常出现的,请问你该怎么解呢?
正常数学解 方程式
下面先带大家用数学方法来解
# 一元一次方程 #
解:设 有x只,则 有(35-x)只。
那 的腿就是 2 * x
的腿就是 4 * ( 35-x )
2x + 4( 35-x ) = 94
2x + 140 -4x = 94
-2x = -46
x=23
所以
答: 等于23只, 35-23等于12只。
应该挺简单的吧,不难!
# 二元一次方程 #
解:设 有x只,则 有y只。
那 的腿就是 2 * x
的腿就是 4 * y
①:2x + 4y = 94
又因为
②:x + y = 35
②*2得出:
③:2x + 2y =70
① - ③:2y=24
y=12
把y =12 代入②中得出
x = 23
所以
答: 等于23只, 等于12只。
还算挺简单的,不难!
我的天!!
解题格式居然都记得!!
# 细思极恐 #

抬腿解 我不作大哥好多年...
那我们来看如何抬腿吧!
# 请把你们的脚,都抬起2只来 #
假设在笼子里所有的 ,都抬起两只脚
让他们趴在笼子里。
也让所有的 ,也都抬起两只脚
让它们学习“站立”
那么因为有35个头
每个头都要抬起两只脚脚
脚的数量就会突然减少
35 * 2 = 70
94 - 70 = 24
剩下的脚是谁的呢?
是兔子的。每只兔子剩2个脚
所以:24 / 2 = 12
有12只,
有:35 - 12 = 23 只
# 让小鸡抬起1只脚、兔子抬起2只脚 #
假设鸡 都抬起一只脚
兔子 都抬起两只脚
鸡 抬起1只脚剩1只;
兔子 抬起2只脚剩2只
那么,脚的数量就会变为原来的一半。
94 / 2 = 47
这时,笼子里兔子 比鸡 的脚多1
那只要用教的数目减去头的数目
算出来的就是兔子多出来的脚
47 - 35 = 12
所以兔子 有12只
小鸡 有35 - 12 = 23 只
# 让兔子抬起2只脚 #
那么每一个头下面都只有2个脚
35个头也就是35 * 2 = 70个脚
那么少掉了,94 - 70 = 24个脚
这24个 就是兔子抬起来的2只脚
24 / 2 = 12
所以
所以兔子 有12只
小鸡 有35 - 12 = 23 只
python解 小菜一碟、难不倒我代码
挺好玩的吧,接下来就用代码来看看怎么解决吧!
首先:定义变量将头和脚的数目保存起来。

用一个for循环,
让鸡从1只算到35只总有一个是正确的答案。
兔子的数量就等于头减去鸡。

用if语句,判断他们脚的数量

如果他们脚的总和等于94,就说明找到了鸡兔的数量,直接输出

运行一下。

python完整程序

程序的原理就是:
鸡等于0,兔子就等于35,然后算一下他们的脚等不等于94,
不等于。重新循环
鸡等于1,兔子就等于34,然后算一下他们的脚等不等于94,
不等于。重新循环
....................
直等到
鸡等于23,兔子就等于12,然后算一下他们的脚等于94,结束循环。