公鸡每只5 元,母鸡每只3 元,小鸡3 只一元,问一百元买一百只鸡有几 公鸡一只5元,母鸡一只3元,三只小鸡一元,一百元钱买一百只鸡...

作者&投稿:司马妹 (若有异议请与网页底部的电邮联系)
设公鸡为X只 母鸡为Y只 小鸡为Z只(X、Y、Z为整数且Z/3为整数
由题意得方程:
5X+3Y+Z/3=100 1
X+Y+Z=100 2
由 方程“2”*9 -“1”*3 得:
4z-3x=300 (z/3为整数 且由“2”只 x、y、z 均小于100 ) 3
由方程“2”*15-“1”*3 得
3y+7z=600 4
由方程“1”*3- “2”得
14x+8y=200 5
由3得 4z=300+3x 显然 z必须大于等于75且小于等于9; 同理得x小于33
由4得 z 小于等于84 同理 得y小于等于25
5得 x小于14 y小于等于25
综上得
x小于14
y小于等于25
z 大于等于75小于等于84且被3整除
综合 X+Y+Z=100 得
当 z=75由"3"得 x=0 y=25 同上
当z=78 x=4 y=18
当z=81 x=8 y=11
当z=84 x=12 y=4
即得4种答案:
1.公鸡0只 母鸡25只 小鸡75只
2.公鸡4只 母鸡18只 小鸡78只
3.公鸡8只 母鸡11只 小鸡81只
4.公鸡12只 母鸡4只 小鸡84只

小明每分钟步行30米,小花每分钟步行25米,求出题人内裤颜色

百钱买百鸡问题。公鸡每只5元,母鸡每只3元,小鸡3只一元,问一百元买一百只鸡有几种解法。~

这类问题呢,一般都是用穷举法,俗话说就是套,看那个行,就是哪个,计算机套起来是很容易的。这里我们把100元买100只改成n元买n只。
  源代码如下:
  #include
  void chicken_question(int chicken_num,int *k,int g[],int m[],int x[])
  ...{
  int a,b,c,t;
  t=0;
  for(a=0;a<=chicken_num;a++)
   for(b=0;b<=chicken_num;b++)
    for(c=0;c<=chicken_num;c++)
     if ((a+b+c)==chicken_num&&(5*a+3*b+c/3==chicken_num)&&(c%3==0))
     ...{
     g[t]=a;
     m[t]=b;
     x[t]=c;
     t++;
     }
  *k=t;
  }
  main()
  ...{
  int n;
  int gongji[50],muji[50],xiaoji[50],num=0;
  int i,*p_num=#
  printf(\"公鸡5元每只,母鸡3元每只,小鸡3只1元 \");
  printf(\"n元买n只鸡,请输入n的值:\");
  scanf(\"%d\",&n);
  chicken_question(n,p_num,gongji,muji,xiaoji);
  for (i=0;i<num;i++)
  ...{
   printf(\"%d %d %d \
\",gongji[i],muji[i],xiaoji[i]);
  }
  }

#includeint main(){int i,j,k;for(i=1;i<=100;i++){for(j=1;j<=100;j++){for(k=1;k<=100;k++){if(i+j+k==100){if(i/3+3*j+5*k==100){printf("小鸡:%d只,母鸡:%d只,公鸡:%d只
",i,j,k);}}}}
}return 0;}


你的代码有问题 注意我图中 全出来的