| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 839 人关注过本帖
标题:百鸡百钱问题,为什么不对呢?
取消只看楼主 加入收藏
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
收藏
 问题点数:0 回复次数:3 
百鸡百钱问题,为什么不对呢?

public class A
{
public static void main(String[] args)
{
int x,y,z;
for(x=0;x<100;x++)
{ for(y=0;y<100;y++)
{for(z=0;z<100;z++)
{ if( 5x+3y+(1/3)z=100 && x+y+z=100 )
{ System.out.println("x="+x);
System.out.println("y="+y);
System.out.println("z="+z);
}
}
}
}
}
}

为什么运行时总说不对呢?
还有这个代码是不是太麻烦了?能不能请高手帮忙优化一下?
谢谢。

搜索更多相关主题的帖子: public 
2006-08-20 17:21
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
收藏
得分:0 
{ if( 5*x+3*y+z/3 == 100 && x+y+z == 100 && z%3==0)

{ if( 5*x+3*y+(1/3)*z==100 && x+y+z==100&&z%3==0 )



这两个部分为什么不一样?
下面的为什么不对?
2006-08-20 19:45
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
收藏
得分:0 
第二种方式是错的,运行来看似乎没有把1/3*Z的值加到100的总数内。
为什么?
谢谢。
2006-08-21 02:23
chengsencs
Rank: 1
等 级:新手上路
帖 子:109
专家分:0
注 册:2006-7-24
收藏
得分:0 

public class A
{
public static void main(String[] args)
{
int a;
for(a=1;a<=100;a++)
{ if((1/3)*a>0)
System.out.println("a="+a);
}
}
}

应该是对的了,楼上的。看看这个程序,没有输出。所以(1/3)*a恒为0。

2006-08-21 13:11
快速回复:百鸡百钱问题,为什么不对呢?
数据加载中...
 
   



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

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