我想通过迭代近似pi。这只是代码的一部分。我试图把这个公式放入java中:pi = 4(1 - 1/3 + 1/5 - 1/7 + 1/9 + ... +(( - 1)^(i + 1))/(2i-1))。我的问题是这个方程的总和(在我的代码中说明)。如果用户继续输入y,程序应该将i乘以2并计算pi直到用户输入n,然后返回到主菜单。近似pi通过迭代JAVA
else if(input == 4)
{
System.out.print("i=1 pi=4.0\tWould you like to continue? (y|n) ");
char y = keyboard.next().charAt(0);
if (y =='y')
{
for (int i=2; i<=1000; i=i*2)
{
int sum = 0;
double pi =4 * (Math.pow(-1, i+1)/(2*i-1));
//Right here, how do I modify it to get a sum across a multitude of i's?
System.out.print("i=" + i + " " + "pi" + "=" + pi + "\tcontinue (y|n)? ");
keyboard.next().charAt(0);
}
}
else
{
}
你为什么要把'i'乘以2?应该不是'i ++'而是? – Henry 2014-09-25 15:31:30
'Math.pow(-1,i + 1)'这也行不通。 – Henry 2014-09-25 15:32:36
i的增量应该是前一个的两倍 – awxf218 2014-09-25 15:35:17