Python实现鸡兔同笼问题

时间:2025-02-09 08:23:51

鸡兔同笼问题是《孙子算经》中的经典题目,也是小学奥数题里的常客。

原书中是这么描述的:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?”

翻译成现代汉语就是:“鸡和兔放在一个笼子里,笼子里共有 35 个头,94 个爪,那鸡和兔各有多少只?”

请你根据下面的要求,用 Python 来完成这道数学题,和它一起“奥数”:

  1. 在  中建立函数 calculate(),该函数能算出鸡和兔分别的数量;
  2. 在主程序  中导入函数 calculate(),根据题干中的“总头数”和“总脚数”输出问题的答案。

文件 

def calculate(x,y):
  for chicken in range(0,x):
    rabbit = x-chicken
    if  y == chicken*2 + rabbit*4:
      return rabbit,chicken

文件

# 导入 solution 模块
from solution import calculate
# 多返回值函数返回的是【元组】,字符串格式化输出中,% 后跟的也是【元组】
print('笼中有兔%d只,有鸡%d只' % calculate(35, 94))

打印结果:

笼中有兔12只,有鸡23只