百錢百雞c語言for
A. c語言中百錢百雞的程序
#include<stdio.h>
int main()
{
int a,b,c;//各種雞的數目
int i=0; //方程解數目
printf("百錢買百雞,求雞翁,雞母,雞雛的數目:\n");
for(a=0;a<20;a++) //外層循環控制公雞
{
for(b=0;b<=33;b++) //內層循環控制公雞
{
c=100-a-b; //小雞的只數
if(c%3==0 && a*5+b*3+c/3==100)
{
//驗證取c值的合理性及得到一組解的合理性
printf("%2d:雞翁數:%2d,雞母數:%2d,雞雛數:%2d\n",++i,a,b,c);
}
}
}
}
B. c語言解決百錢買雞問題
chicks小雞,cocks公雞,hens
n是錢,因為1錢可買3小雞,所以小雞數對應錢數就是:chicks=3*n
外層遍歷:買小雞的錢,從0遍歷到33(33塊就99個小雞了,明顯用不了這么多,但作者為了保險吧)
內層遍歷:買母雞的個數,從0遍歷到33個(33個母雞也99塊,與上面意圖相同,盡量遍歷到境界點,雖然有點不科學,但如果問題有解,在條件成立時加個跳出,也不礙事)
內層遍歷的時候:cocks=100-hens-chicks; 公雞=100-母雞-小雞,(確保三種雞加起來是100)
if(5*cocks+3*hens+n==100&&cocks>=0) 意思是:所有的錢加起來是100並且公雞個數不為負數
printf("%d %d %d\n",cocks,hens,chicks); //打完收工
hens++;//自增
}
n++;//自增
C. C語言編寫程序解決百錢白雞問題
按照題目要求編寫的解決百錢買百雞問題的C語言程序如下
#include<stdio.h>
intmain()
{
inta,b,c;
for(a=0;a<=20;a++)
for(b=0;b<=33;b++)
{
c=100-a-b;
if(c%3==0&&5*a+3*b+c/3==100)
printf("雞翁%d只,雞母%d只,雞雛%d只 ",a,b,c);
}
return0;
}
D. C語言百元百雞問題
窮盡法是利用計算機計算迅速的"笨"辦法得到結果,利用多重循環,只要列出x,y,z的所有可能性設置循環起止值即可
公雞x取值范圍: 0隻~100元/2元只
母雞y取值范圍: 0~100/3
小雞z取值范圍: 0~200隻(2隻2隻地買,省得多出0.5元錢不好算整數100元)
#include<stdio.h>
void main() { int x,y,z;
for ( x=0;x<=100/2;x++ )
for ( y=0;y<=100/3;y++ )
for ( z=0;z<=200;z+=2 )
if ( x+y+z==100 ) if ( x*2+y*3+z/2==100 ) printf("%d %d %d\n",x,y,z);
}