| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 611 人关注过本帖
标题:[求助]各位大哥看看小虾米弟弟的程序错在哪里
只看楼主 加入收藏
raycockroach
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-12-14
收藏
 问题点数:0 回复次数:6 
[求助]各位大哥看看小虾米弟弟的程序错在哪里
public class jex
{
public static void main(String arg[])
{
double i,sum=0,k;
int n=1,j;
do
{
j=(-1)^(n-1);
k=1/(2*n-1);
sum+=j*k;
n+=1;
}
while((1/(2*n-1))>=0.00001);
System.out.println(sum);
}
}


本想编pi的值计算,可是,为什么结果总是-1

[此贴子已经被作者于2007-5-21 20:41:28编辑过]

搜索更多相关主题的帖子: 弟弟 虾米 
2007-05-21 20:38
syuanq
Rank: 2
等 级:新手上路
威 望:3
帖 子:297
专家分:0
注 册:2006-12-11
收藏
得分:0 
你这个程序运行n+=1是n=2,而(1/2*n-1)=1/3常大于0.00001啊,也就是说你的程序运行一次就结束了,而这时sum是-1,所以输出是-1咯

[url]www.[/url]欢迎大家的光临,一起交流学习
2007-05-21 21:00
a276202460
Rank: 2
等 级:新手上路
威 望:4
帖 子:392
专家分:1
注 册:2007-4-10
收藏
得分:0 
不知道是怎么求的  你的循环只有一次 肯定求不出PI 1/(2*n-1) n是int类型 这个表达式头一次=0

2007-05-21 21:02
syuanq
Rank: 2
等 级:新手上路
威 望:3
帖 子:297
专家分:0
注 册:2006-12-11
收藏
得分:0 
搞错了,这个n是int型的   1/2*n-1应该等于0,呵呵!

[url]www.[/url]欢迎大家的光临,一起交流学习
2007-05-21 21:38
raycockroach
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-12-14
收藏
得分:0 

错了,应该把那个转换为double型的,可是如果改变了的话就有错误提示了

2007-05-21 21:59
raycockroach
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-12-14
收藏
得分:0 
而且,n不能设置为double的,只能是int型
2007-05-21 22:02
songwei20000
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2007-4-23
收藏
得分:0 
好麻烦啊.看到这样的东西头就疼
2007-05-21 22:05
快速回复:[求助]各位大哥看看小虾米弟弟的程序错在哪里
数据加载中...
 
   



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

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