C 语言:鸡兔同笼问题
最编程
2024-07-12 13:20:33
...
题目:已知鸡和兔的总数量n,总脚数为m。输入n和m,依次输出鸡和兔的数目。如果无解,输出"no answer"
题目来源:c语言程序设计第二版电子科技大学出版社p90t4
解鸡兔同笼问题,首先要先解出兔子和鸡的方程,也可以解出其中一个,再用鸡和兔子的总数量减去,就能得到另外一个。
这里无解的条件是鸡和兔子的数量小于0或者兔子和鸡的总脚数为偶数,也就是说鸡和兔子的总脚数取余等于1。
下面编程中a为鸡的数量,b为兔子的数量
鸡兔同笼解出的方程
鸡的数量方程:a = 2*n - m / 2;
兔子的数量方程:b = m/2 - n;
下面为此编程
#include <stdio.h>
int main()
{
int a, b, m, n;
printf("请依次输入兔子和鸡的总数量,兔子和鸡的总脚数有多少\n");
scanf("%d %d",&n,&m);
b = m/2 - n;
a = 2*n - m / 2;
if (m % 2 == 1 || a < 0 || b<0) {
printf("no answer");
}
else {
printf("鸡的数量为%d,兔子的数量为%d", a, b);
}
}
上一篇: C 算法 鸡兔同笼