【发布时间】:2019-03-23 03:57:03
【问题描述】:
我很难理解以下这些代码行背后的逻辑。谁能帮忙解释一下为什么这些代码会产生以下结果?
public class Test {
public static void main(String[] args) {
int n;
for(n = 1; n <= 5; n++)
System.out.println(mystery(n));
}
public static int mystery(int k){
int x,y;
y = k;
for(x=1; x<= (k -1); x++)
y = y * (k-x);
return y;
}
这些是结果:
1 2 6 24 120
【问题讨论】:
-
这是一个阶乘级数,解释如下: 1! = 1 2! = 2 * 1 = 2 3! = 3*2*1 = 6 4! = 4*3*2*1 = 24 5! = 5*4*3*2*1 = 120
标签: java loops for-loop math logic