百錢買百雞
題目描述
百錢買百雞問題:公雞五文錢一隻,母雞三文錢一隻,小雞三隻一文錢,用100文錢買100只雞,公雞、母雞、小雞各買多少隻?
本程序要求解的問題是:給定一個正整數n,用n文錢買n只雞,問公雞、母雞、小雞各買多少隻?
輸入
輸入一個正整數n(n<=100)。
輸出
如果有解,種組合佔一行,包含公雞、母雞、小雞的個數,用正整數表示,每個數據佔4列。公雞母雞小雞個數均大於等於0,按公雞數目從小到大輸出,公雞數目相同按母雞數目從小到大輸出,以此類推。如果無解,輸出“No Answer”。
樣例輸入
100
樣例輸出
0 25 75
4 18 78
8 11 81
12 4 84
#include<stdio.h>
#include<math.h>
int main()
{
int x,y,z,n,f=1;
double a;
scanf("%d",&n);
for(x=0; x<=100; x++) //x代表公雞數,從x=0開始循環
{
for(y=0; y<=100-x; y++) //y代表母雞數,母雞數最多爲100-x
{
for(z=0; z<=100-x-y; z++) //z代表小雞數,最多爲100-x-y
{
a=1.0*z/3;
if(x+y+z==n && 5*x+3*y+a==n)//判斷是否符合題目條件
{
printf("%4d%4d%4d\n",x,y,z);
f=0;//如果符合,令f=0
}
}
}
}
if(f==1) printf("No Answer\n");//如果f不爲0,代表不符合題目條件
return 0;
}