python写鸡兔同笼
时间: 2024-09-25 12:07:17 浏览: 48
在Python中,编写“鸡兔同笼”的经典问题通常是为了让学生理解线性方程组的应用。这是一个古老的中国数学谜题,涉及到用最少的信息求解鸡(头+脚=2)和兔子(头+脚=4)的数量。这个问题可以用编程的方式来解决,我们可以通过设置变量并列出方程式来求解。
例如:
```python
# 定义变量
chickens = 0
rabbits = 0
feet = total_feet # 假设给定总共有多少只脚
# 鸡和兔的脚数计算
chicken_feet = chickens * 2
rabbit_feet = rabbits * 4
# 线性方程
eq1 = chicken_feet + rabbit_feet == feet
eq2 = chickens + rabbits == total_heads # 如果给出头的数量,则替换此行
# 解方程
from sympy import symbols, Eq, solve
feet_num = symbols('feet_num')
heads_num = symbols('heads_num')
# 如果只知道脚,那么只有一个方程
if heads_num is None:
eqs = [Eq(chicken_feet + rabbit_feet, feet_num)]
else:
eqs = [Eq(chicken_feet + rabbit_feet, feet_num), Eq(chickens + rabbits, heads_num)]
solution = solve(eqs)
print(f"鸡有 {solution[chickens]} 只,兔子有 {solution[rabbits]} 只.")
```
在这个例子中,`total_feet` 和 `total_heads` 分别代表总的脚和头的数量。如果题目给出了具体的头数,就加入第二个方程。然后使用SymPy库的`solve`函数求解。
阅读全文