Java50道经典习题-程序21 求阶乘

Posted parkour1026

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java50道经典习题-程序21 求阶乘相关的知识,希望对你有一定的参考价值。

题目:求1+2!+3!+...+20!的和
分析:使用递归求解
0的阶乘和1的阶乘都为1

public class Prog21{
    public static void main(String[] args){
        long sum=0L;
        for(int i=1;i<=20;i++) {
            sum+=factorial(i);
        }
        System.out.println(sum);
    }
    //递归求阶乘
    public static long factorial(int n) {
        if(n==0||n==1) {//当n==0或者1时,返回0或1的阶乘1
            return 1;
        }
        return n*factorial(n-1);
    }
}
/*运行结果
2561327494111820313
*/

 

以上是关于Java50道经典习题-程序21 求阶乘的主要内容,如果未能解决你的问题,请参考以下文章

Java基础50道经典练习题(21)——求阶乘

Java50道经典习题-程序22 递归求阶乘

Java基础50道经典练习题(22)——递归求阶乘

Java基础50道经典练习题(22)——递归求阶乘

Java基础50道经典练习题(27)——求素数

Java基础50道经典练习题(27)——求素数