本帖最后由 doyxy 于 2014-1-4 12:59 编辑
今天看了一下java语言程序设计基础篇(第八版),看到一个练习题,用4*(1-1/3+1/5-1/7+1/9-...)的方法求近似π值,
我的代码如下, 但只能设定x小于某个值,而题目要求似乎是求极限?如果x不设置条件,又会提示
Test1.java:17: 错误: 无法访问的语句 System.out.println("pi="+4*temp);
如果把上面的语句放到里循环里,程序会一直滚动显示pai值,但是不是越来越接近,而是一个大一个小
到底应该怎么做呢?
pi=3.1416871090538248
pi=3.1414982070467405
pi=3.1416870912135253
pi=3.1414982248836703
pi=3.1416870733799644
pi=3.141498242713864
- class Test1
- {
- public static void main(String[] args)
- {
- double pi,a=0,b=0,temp=0;
- int count=0;
- for (int x=3;x<10000000;x+=2 )
- {
- count++;
- if (count%2!=0)
- a-=(1.0/x);
- else
- a+=1.0/x;
- temp = (1.0+a);
- }
-
- System.out.println("pi="+4*temp);
- }
- }
复制代码
|
|