Java--求阶乘和

1、问题
求1!+2!+3!+4!+…+n!的和
2、阶乘如何计算?
1的阶乘为1,2的阶乘等于21,3的阶乘等于321,那么n!=n(n-1)(n-2)…*1
3、阶乘和: 求出每一个数的阶乘再进行相加
4、代码实现:

package demomethod03;

import java.util.Scanner;

/**
 * 求阶乘和
 * 求1!+2!+3!+4!+........+n!的和
 *
 *
 *
 */
public class FabNum {
    public static void main(String[] args) {
        System.out.println("请输入n:");
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int ret = fibSum(n);
        System.out.println("阶乘和为"+ret);
    }
    //产生阶乘和

    private static int fibSum(int n) {
        int sum = 0;
        for (int i=1; i <= n; i++) {
            sum += fib(i);
        }
        return sum;
    }

    //产生每一个数字的阶乘
    private static int fib(int i) {
        int temp =1;
        for (int j = 1; j <= i; j++) {
            temp = temp * j;

        }
        return temp;
    }
}

5、运行结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Subuprogrammer/article/details/104769680
今日推荐