百钱百鸡问题
用100元钱卖100只鸡,公鸡每只5元,母鸡每只3元,小鸡每3只1元,要求每种鸡至少买一只。试编程求各种鸡各买多少只
主要思路:先将三种鸡的个数设出来,利用多层循环满足鸡个数和为100,价格总和也为100,则条件成立将鸡的个数输出。
/***************百钱百鸡问题********************
* 用100元钱卖100只鸡,公鸡每只5元,母鸡每只3元,
小鸡每3只1元,要求每种鸡至少买一只。
试编程求各种鸡各买多少只
*************************************************/
void main ()
{
int x,y,z;//分别带代表公鸡、母鸡和小鸡
for(x=1;x<=19;x++)//公鸡最多19只(还有小鸡和母鸡)
for(y=1;y<=31;y++)//母鸡最多31只
{
z=100-x-y;
if(5*x+3*y+z/3==100&&z%3==0)//小鸡个数要是3的倍数,防止钱有剩余
printf("公鸡有%d只,母鸡有%d只,小鸡有%d只;\n",x,y,z);
}
}