第二个改成这样就行了
public class aaa2{
public static void main(String args[])
{
double m, n = 0, x = -1, i;
for (i = 1; i <= 10000; i++) //这里应该循环10000次,不是循环10次
{
x = x * -1;
m = 2 * i - 1; //m不应该是2 * -1
n += 1 / m * x; //n = n * x; 显然是不对的,因为你最后输出的是和,不是积
}
System.out.printf("1-1/3+1/5-1/7+1/9-1/11+...的前10000项之和为%f%n", n); //输出不能放for里面
}
}
在aaa2中,每次循环n的值都被重置了,奇数次时n= -1/2,偶数次时n也是 -1/2.
这和题目有关系么?
i <= 10 这个循环次数就少很多了吧?