| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 522 人关注过本帖
标题:[求助]一个简单的问题
只看楼主 加入收藏
kmk2002
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-7-17
收藏
 问题点数:0 回复次数:6 
[求助]一个简单的问题
JAVA代码如下:
int i=1;
int sum=1;
double e=0.0;
while((Math.E-e)>0.000001){
sum=i*sum;
e=e+1.0/sum;
i++;
}
System.out.println("i="+i);
System.out.println("e="+e);
System.out.println(Math.E);

结果:
i=35
e=Infinity
2.718281828459045
为什么e显示是最小值
如果把e的初始改成1.0就可以了 到底是那里的问题~~~~~!!!!!!!!!
搜索更多相关主题的帖子: double JAVA 
2007-07-18 16:31
jdk2006
Rank: 1
等 级:新手上路
帖 子:244
专家分:0
注 册:2007-5-12
收藏
得分:0 
以下是引用kmk2002在2007-7-18 16:31:49的发言:
JAVA代码如下:
int i=1;
int sum=1;
double e=0.0;
while((Math.E-e)>0.000001){
sum=i*sum;
e=e+1.0/sum;
i++;
}
System.out.println("i="+i);
System.out.println("e="+e);
System.out.println(Math.E);

结果:
i=35
e=Infinity
2.718281828459045
为什么e显示是最小值
如果把e的初始改成1.0就可以了 到底是那里的问题~~~~~!!!!!!!c

你说的什么意思?e=1.0后结果还是一样.看下面:


Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\new>d:

D:\>javac demoe.java

D:\>java demoe
i=35
e=Infinity
2.718281828459045

D:\>javac demoe.java

D:\>java demoe
i=10
e=2.7182815255731922
2.718281828459045


2007-07-18 19:59
kmk2002
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-7-17
收藏
得分:0 
e=1.0的时候是可以显示结果 为什么e=0.0的时候就不可以 我的问题就是这个
2007-07-19 08:14
rongjing
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2007-3-24
收藏
得分:0 
Infinity是无穷大的意思,e=Infinity不是没值,而是告诉你它是无穷大
2007-07-19 09:32
rongjing
Rank: 1
等 级:新手上路
帖 子:84
专家分:0
注 册:2007-3-24
收藏
得分:0 
不知道你写这个程序是用来干什么
2007-07-19 09:32
kmk2002
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2007-7-17
收藏
得分:0 

这个是同学写的 问我怎么显示不出来 那为什么会是无穷大呢 明明有条件Math.E-e<0.000001 最多也就和E差不多

2007-07-19 12:06
liguoshi1984
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2007-7-4
收藏
得分:0 

  这是一个求自然对数的程序
  其中e=1+1/1!+1/2!+1/3!+1/4!+1/5!+......,项数越多趋近e.
  
  如果e初值等于1.0 ,Math.E-e趋近于0,按照你程序中的条件,在i=10时就会结束循环
  如果e初值等于0.0,Math.E-e趋近于1,那么这将是一个死循环.所以e本来就不应该是0.0
  
  e是趋近1,并不是"无穷大",至于为什么从i=34开始e就等于infinity,这可能跟数的精度有关.

2007-07-19 18:56
快速回复:[求助]一个简单的问题
数据加载中...
 
   



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

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