题目:
请采用递归和非递归方法计算并输出 1!+2!+3!+.....100!的和,其中,n!=n*(n-1)*...*1,且 n 为大于 0 的整数。
源码:
package 实验五;
public class R {
public static long Factorial(int n) { //数据类型用long,否则会溢出
if(n==0||n==1)
return 1;
else
return n*Factorial(n-1);
}
public static long Factorialsum(int n) {
if(n==0)
return 0;
else
return Factorial(n)+Factorialsum(n-1);
}
public static void main(String[] args) {
System.out.println("1!+2!+3!+...+100!的和为"+Factorialsum(100));
}
}
实验结果: