标题:百钱买百鸡的问题(求助)
取消只看楼主
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
 问题点数:0 回复次数:3 
百钱买百鸡的问题(求助)

我记得我们老师说过一个题,题是这样的:用一百块钱买一百只鸡,大鸡5块钱一只,子鸡3块钱一只,小鸡1块钱3只.

老师说用C语言只能得出一个结果,而用别的计算机语言可以得出三种结果,请问这是算法的问题,还是语言的问题?

请顺便把这段程序写出来,谢谢!

我这样写的对不对?

main()

{int i,j,k;

for(i=0;i<=20;i++)

for(j=0;j<=34;j++)

for(k=0;k<=300;k++)

if(5*i+3*j+1.0/3*k=100) printf("%d,%d,%d\n",i,j,k);

}

我认为这样写好像得不出结果,因为1.0/3*3!=1,这好像出了点问题,请高手帮忙,谢谢!

搜索更多相关主题的帖子: 子鸡 C语言 int 
2004-05-15 23:52
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
得分:0 
谢谢各位,忘了一个条件!!

2004-05-17 16:36
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
得分:0 

我知道结果了,用C也能算出三种结果,老师说只能算出一种结果,可能是他的算法有问题吧,程序如下:

main() {int i,j,k,n=0; for(i=1;i<=20;i++) for(j=1;j<=34;j++) for(k=3;k<=300;k+=3) if((5*i+3*j+k/3==100&&i+j+k==100)) {n++;printf("%2d:%d %d %d\n",n,i,j,k);} }

结果是:

1: 4   18  78

2: 8   11  81

3: 12   4  84

谢谢各位的支持!


2004-05-17 18:05
空前
Rank: 1
等 级:新手上路
帖 子:1146
专家分:0
注 册:2004-5-11
得分:0 

楼上的兄弟,英语学得不错,连解释都用英语;

不过算法真的不错!


2004-06-06 13:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-1506-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.622615 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved