请编写一个程序解决鸡兔同笼问题
时间: 2024-09-12 15:15:09 浏览: 57
鸡兔同笼问题是一个经典的数学问题,通过已知的头数和脚数来推算鸡和兔各有多少只。以下是解决该问题的Python程序:
```python
def solve_chicken_rabbit(total_heads, total_legs):
# 无解的情况
if total_legs % 2 != 0 or total_legs < total_heads * 2 or total_legs > total_heads * 4:
return "无解"
# 解方程
rabbits = (total_legs - 2 * total_heads) // 2
chickens = total_heads - rabbits
return chickens, rabbits
# 示例使用
total_heads = 35
total_legs = 94
result = solve_chicken_rabbit(total_heads, total_legs)
if result != "无解":
print(f"鸡有 {result[0]} 只, 兔有 {result[1]} 只")
else:
print(result)
```
解释:
1. 我们定义了一个函数`solve_chicken_rabbit`,它接受两个参数:`total_heads`代表头的总数,`total_legs`代表脚的总数。
2. 我们首先检查是否有解。由于每只鸡有2条腿,每只兔子有4条腿,所以总脚数必须是偶数。另外,脚的总数不能小于头数的两倍,也不能大于头数的四倍。如果不符合这些条件,则返回"无解"。
3. 接着,我们通过简单的数学运算来解决问题。兔子的脚数为4,鸡的脚数为2,所以用总脚数减去两倍的头数后,除以2就可以得到兔子的数量。然后用头数减去兔子的数量,就可以得到鸡的数量。
4. 最后,函数返回一个元组,包含鸡和兔子的数量。如果问题无解,则返回"无解"。
阅读全文