求1+2!+3!+...+20!的和。要java算法。并且告诉我1+2!+3!+...+20!等于多少。

2025-05-06 07:48:12
推荐回答(2个)
回答1:

采用递归就OK了,答案是:2561327494111820313
代码如下:

public class MyFactorial {

public static void main(String[] args) {
System.out.println(factorial(20));
}

private static long factorial(int a) {
long s=0;
if(a==0) s=0;
if(a==1) s=1;
else if(a>=2){
s=a * (factorial(a-1)-factorial(a-2)) + factorial(a-1);
}
return s;
}

}

回答2:

刚才拿C验算了一下,1L hjb368的答案是正确的。答案就是:2561327494111820313