自学java的问题。这个程序我看不懂,能不能解释过程
发布网友
发布时间:2023-10-15 00:04
我来回答
共1个回答
热心网友
时间:2024-12-14 17:35
public class Exercise05_14
{
public static void main ( String[] args )
{
// 输出i右边20个空格,m(i)右边20个空格
System.out.printf ("%-20s%-20s\n", "i", "m(i)");
// 循环10次输出i,和方法m的返回值,同理右边各20个空格
for ( int i = 1; i <= 1000; i += 100 )
System.out.printf ("%-20d%-20.4f\n", i, m (i));
}
// 方法m,参数i
public static double m ( int i )
{
double pi = 0;
double sign = 1;
// 从1到i循环
for ( int k = 1; k <= i; k++ )
{
// 一步一步自己加
pi += sign / ( 2 * k - 1.0 );
sign = -1 * sign;
}
// 最后返回4个pi
return 4 * pi;
}
}
追问当i等于1的时候,循环第一次sign是不是等于-1(因为-1 * 1 = -1).
当i等于101的时候,循环是不是从-1开始的
追答4 * (1/1 - 1/3 + 1/5 - 1/7 + 1/9 - ..................)
就是这样一个式子。