//圆周率 π = 4∑(k=0,..∞)(-1)^k/(2k+1)
//π = 3.14159265358979323846
public class yzq {
public static void main(String[] args) {
// TODO Auto-generated method
stub
int n=0
double a=0
for (n=0n<=10000000n++ )
{
a = a + 4*Math.pow(-1,n)/(2*n+1)
System.out.println("第 "+n+"
位
"+a)
}
System.out.println("最后一位
"+a)
}
}
//程序运行结果
//第10
次计算
3.232315809405594
//第100
次计算
3.1514934010709914
//第1000
次计算
3.1425916543395442
//第10,000
次计算
3.1416926435905346
//第100,000
次计算
3.1416026534897203
//第1000,000
次计算
3.1415936535887745
//第10,000,000次计算
3.1415927535897814
//第100,000,000次计算
3.141592643589326
//第999,999,990次计算
3.1415926545880506
//第999,999,991次计算
3.1415926525880504
//第999,999,992次计算
3.1415926545880506
//第999,999,993次计算
3.1415926525880504
//第999,999,994次计算
3.1415926545880506
//第999,999,995次计算
3.1415926525880504
//第999,999,996次计算
3.1415926545880506
//第999,999,997次计算
3.1415926525880504
//第999,999,998次计算
3.1415926545880506
//第999,999,999次计算
3.1415926525880504
//第1,000,000,000次计算
3.1415926545880506
按照你的要求编写的求圆周率的Java程序如下
public class A {public static void main(String[] args) {
double m=1
double sum=0
int i=1
int t=1
while(m>=0.0001){
sum=sum+t*m
m=1.0/(2*i+1)
t=t*(-1)
i++
}
System.out.println(String.format("%.5f", sum*4))
}
}
运行结果
3.14139
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)