鸡兔同笼的问题,怎么编程?我做的怎么不对?
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/08/27 14:12:48
鸡兔同笼的问题,怎么编程?我做的怎么不对?
![](http://img.wesiedu.com/upload/3/f7/3f72371575a642ed5e2c2ef351e8acff.jpg)
![](http://img.wesiedu.com/upload/3/f7/3f72371575a642ed5e2c2ef351e8acff.jpg)
我晕倒.你当列个2元一次方程计算机就能自己帮你把这个方程解出来啊?计算机只能一个数一个数的来试的.因为x+y=30,所以我们知道x,y的最大值就是30了,那么就把x从1到30,y从1到30分别来试试看什么组合能满足要求就好:#include <stdio.h>
int main()
{
int x, y;
int find = 0;
for (x = 0; x <= 30; x++)
{
for (y = 0; y <= 30; y++)
{
if ((x+y) == 30 && (2*x + 4*y) == 90)
{
find = 1;
break;
}
}
if (find)
break;
}
if (find)
printf("%d, %d\n", x, y);
else
printf("Can't find\n");
}
再问: 那么复杂的啊,我还没学到后面的东西。最简单的怎么做?不过还是谢谢你了。
再答: 用电脑来做的话,这就是最简单的了。 你说没学到后面的东西,是什么没学到?for循环吗?还是if判断?还是其他什么?
int main()
{
int x, y;
int find = 0;
for (x = 0; x <= 30; x++)
{
for (y = 0; y <= 30; y++)
{
if ((x+y) == 30 && (2*x + 4*y) == 90)
{
find = 1;
break;
}
}
if (find)
break;
}
if (find)
printf("%d, %d\n", x, y);
else
printf("Can't find\n");
}
再问: 那么复杂的啊,我还没学到后面的东西。最简单的怎么做?不过还是谢谢你了。
再答: 用电脑来做的话,这就是最简单的了。 你说没学到后面的东西,是什么没学到?for循环吗?还是if判断?还是其他什么?