C语言初步-循环结构-多重循环-百钱百鸡问题

题目描述:

    公鸡每只值五文钱,母鸡每只值三文钱,小鸡每三只值一文钱。现在用一百文钱买一百只鸡。问:这一百只鸡中,公鸡、母鸡、小鸡各有多少只?

题目解析:

设有公鸡、母鸡、小鸡各为x、y、z只,则有方程组:

x+y+z=100

5*x+3*y+z/3=100

    此为三元一次方程组,但只有两个方程式,因此可能有多个解。我们用穷举法编程求解。

参考程序:

#include<stdio.h> 

int main(void)

{       

         int x,y,z;        

         for(x=0;x<=100;x++)

         {

                   for(y=0;y<=100;y++)

                   {

                            for(z=0;z<=100;z=z+3)

                            {//假设小鸡必须一下子买三只,不零卖

                                     if(x+y+z==100&& 5*x+3*y+z/3==100)

                                               printf("%d%d %d\n",x,y,z);

                            }

                   }                          

         }        

         return 0; 

}

运行结果:

0 25 75

4 18 78

8 11 81

12 4 84

猜你喜欢

转载自blog.csdn.net/weixin_43917370/article/details/106925632
今日推荐