Java计算1-n个数阶乘的和的代码

如下的代码内容是关于Java计算1-n个数阶乘的和的代码。

import java.math.BigInteger; 


public class Test02{ 


    public static BigInteger summation(int n){ 

        BigInteger sum = new BigInteger("0"); 

        for(int i=1; i<=n; i++){         

            sum = sum.add(factorial(i)); 

        } 

        return sum; 

    } 

    public static BigInteger factorial(int n){       

        if(n > 0){           

            return BigInteger.valueOf(n).multiply(factorial(n-1)); 

            return BigInteger.ONE; 

        } 

    } 

    public static void main(String[] args){ 

        for(int i=1; i<=30; i++){ 

            System.out.println(i + " 的阶乘 = " + factorial(i)); 

        } 

        for(int i=1; i<=30; i++){ 

            System.out.println("从1到" + i + "的阶乘的总和  = " + summation(i)); 

        }               

    } 

}




运行结果




运行结果:

1 的阶乘 = 1

2 的阶乘 = 2

3 的阶乘 = 6

4 的阶乘 = 24

5 的阶乘 = 120

6 的阶乘 = 720

7 的阶乘 = 5040

8 的阶乘 = 40320

9 的阶乘 = 362880

10 的阶乘 = 3628800

11 的阶乘 = 39916800

12 的阶乘 = 479001600

13 的阶乘 = 6227020800

14 的阶乘 = 87178291200

15 的阶乘 = 1307674368000

16 的阶乘 = 20922789888000

17 的阶乘 = 355687428096000

18 的阶乘 = 6402373705728000

19 的阶乘 = 121645100408832000

20 的阶乘 = 2432902008176640000

21 的阶乘 = 51090942171709440000

22 的阶乘 = 1124000727777607680000

23 的阶乘 = 25852016738884976640000

24 的阶乘 = 620448401733239439360000

25 的阶乘 = 15511210043330985984000000

26 的阶乘 = 403291461126605635584000000

27 的阶乘 = 10888869450418352160768000000

28 的阶乘 = 304888344611713860501504000000

29 的阶乘 = 8841761993739701954543616000000

30 的阶乘 = 265252859812191058636308480000000

从1到1的阶乘的总和  = 1

从1到2的阶乘的总和  = 3

从1到3的阶乘的总和  = 9

从1到4的阶乘的总和  = 33

从1到5的阶乘的总和  = 153

从1到6的阶乘的总和  = 873

从1到7的阶乘的总和  = 5913

从1到8的阶乘的总和  = 46233

从1到9的阶乘的总和  = 409113

从1到10的阶乘的总和  = 4037913

从1到11的阶乘的总和  = 43954713

从1到12的阶乘的总和  = 522956313

从1到13的阶乘的总和  = 6749977113

从1到14的阶乘的总和  = 93928268313

从1到15的阶乘的总和  = 1401602636313

从1到16的阶乘的总和  = 22324392524313

从1到17的阶乘的总和  = 378011820620313

从1到18的阶乘的总和  = 6780385526348313

从1到19的阶乘的总和  = 128425485935180313

从1到20的阶乘的总和  = 2561327494111820313

从1到21的阶乘的总和  = 53652269665821260313

从1到22的阶乘的总和  = 1177652997443428940313

从1到23的阶乘的总和  = 27029669736328405580313

从1到24的阶乘的总和  = 647478071469567844940313

从1到25的阶乘的总和  = 16158688114800553828940313

从1到26的阶乘的总和  = 419450149241406189412940313

从1到27的阶乘的总和  = 11308319599659758350180940313

从1到28的阶乘的总和  = 316196664211373618851684940313

从1到29的阶乘的总和  = 9157958657951075573395300940313

从1到30的阶乘的总和  = 274410818470142134209703780940313

你可能感兴趣的:(Java计算1-n个数阶乘的和的代码)