百鸡问题算法
发布网友
发布时间:2022-04-07 05:29
我来回答
共3个回答
热心网友
时间:2022-04-07 06:58
学过数学这个问题就会了,数学里面是自己列出方程,然后解出来
C语言里吗,就是利用计算机的快速计算能力,但是很笨的算出来
定义三个变量
int x,y,z
然后三个变量都有取值范围的,如0-100,鸡的只数范围
然后利用一个三重循环,把x,y,z的值凑出来,计算机是这样的
这里答案正确的条件是5*x+3*y+z=100
for(x=0;x<=100;x++)
{
for(y=0;y<=100;y++)
{
for(z=0;z<=100;z++)
if(5*x+3*y+z=100)
{
printf("%d, %d, %d", x, y,z) ; //这里就是满足条件的x,y,z了
return;
}
}
}
希望你懂了,程序细节我就不多说了
热心网友
时间:2022-04-07 08:16
百钱百鸡问题中公鸡、母鸡和小鸡的数量都被限定在一定有范围内,所以利用计算机的高速性能,用二重循环枚举所有情况即可。
热心网友
时间:2022-04-07 09:51
多看看书