应用举穷法求百鸡百钱问题
作者:互联网
算法
应用举穷法:尝试问题可能解的所有情况,那些适合情况的解就是问题的解。
设鸡翁,母鸡,鸡雏的个数分别为x,y,z;
由题意知 x+y+z=100和5x+3y+z/3=100;
而x的取值范围为0到20,y的取值范围为0到33,z=100-x-y且z%3==0;
建立两重循环,对所有可能的情况进行穷举判别;
代码
#include <stdio.h>
int main()
{
int x,y,z;
printf("应用举穷法求百鸡百钱问题:\n");
for(x=0;x<=20;x++)
for(y=0;y<=33;y++)
{
z=100-x-y;
if(z%3==0&&5*x+3*y+z/3==100)
printf("鸡翁%d只,母鸡%d只,鸡雏%d只。\n",x,y,z);
}
return 0;
}
标签:int,z%,举穷,printf,百鸡百钱,100,法求 来源: https://blog.csdn.net/weixin_57392092/article/details/119302911