鸡兔同笼问题

鸡兔同笼问题

鸡兔同笼问题是一个经典的数学问题,可以用编程语言编写代码求解。以下是用Python语言实现鸡兔同笼问题的代码:

```python

def chicken_rabbit(num_heads, num_legs):

"""

鸡兔同笼问题求解函数

:param num_heads: 头的总数

:param num_legs: 腿的总数

:return: 鸡的数量和兔的数量

"""

for num_chicken in range(num_heads + 1):

num_rabbit = num_heads - num_chicken # 兔的数量等于总数减去鸡的数量

if (2 * num_chicken + 4 * num_rabbit) == num_legs: # 判断腿的总数是否相等

return num_chicken, num_rabbit

return None

# 测试

num_heads = 20 # 头的总数

num_legs = 56 # 腿的总数

result = chicken_rabbit(num_heads, num_legs)

if result:

num_chicken, num_rabbit = result

print("鸡的数量:", num_chicken)

print("兔的数量:", num_rabbit)

else:

print("无解")

```

以上代码中的`chicken_rabbit`函数根据头的总数和腿的总数,通过遍历可能的鸡的数量,计算出对应的兔的数量,然后判断腿的总数是否相等。如果有解,则返回鸡的数量和兔的数量;如果无解,则返回`None`。最后根据结果打印出鸡的数量和兔的数量,或者显示无解。在本次测试中,当头的总数为20,腿的总数为56时,输出结果为鸡的数量为8,兔的数量为12。

猜你喜欢

相关文章