当前位置:首页 > JavaScript

js实现阶乘之和

2026-04-07 13:46:02JavaScript

实现阶乘之和的方法

计算单个数字的阶乘

阶乘的计算可以通过递归或循环实现。以下是两种方法的代码示例:

递归方法

function factorial(n) {
    if (n === 0 || n === 1) {
        return 1;
    }
    return n * factorial(n - 1);
}

循环方法

function factorial(n) {
    let result = 1;
    for (let i = 2; i <= n; i++) {
        result *= i;
    }
    return result;
}

计算阶乘之和

阶乘之和即从1到n的阶乘相加。以下是实现阶乘之和的代码:

function factorialSum(n) {
    let sum = 0;
    for (let i = 1; i <= n; i++) {
        sum += factorial(i);
    }
    return sum;
}

优化计算阶乘之和

在计算阶乘之和时,可以利用前一个阶乘的结果来优化计算:

js实现阶乘之和

function optimizedFactorialSum(n) {
    let sum = 0;
    let currentFactorial = 1;
    for (let i = 1; i <= n; i++) {
        currentFactorial *= i;
        sum += currentFactorial;
    }
    return sum;
}

示例调用

console.log(factorialSum(5)); // 输出 1! + 2! + 3! + 4! + 5! = 153
console.log(optimizedFactorialSum(5)); // 同样输出 153

注意事项

  • 阶乘增长非常快,当n较大时,结果可能会超出JavaScript的数字表示范围(Number.MAX_SAFE_INTEGER为9007199254740991)。
  • 对于较大的n,建议使用大整数库(如BigInt)来处理。

标签: 阶乘之和
分享给朋友:

相关文章

php递归实现阶乘

php递归实现阶乘

递归实现阶乘的原理 阶乘的定义是对于一个非负整数 n,其阶乘是所有小于及等于 n 的正整数的积。递归是一种通过函数调用自身来解决问题的方法。递归实现阶乘的核心思想是将问题分解为更小的子问题,直到达到基…

php实现阶乘

php实现阶乘

实现阶乘的 PHP 方法 阶乘是指从1乘到该数的连续乘积,通常表示为 n!。以下是几种在 PHP 中实现阶乘的方法。 使用递归函数 递归是一种通过函数调用自身来解决问题的方法。以下是递归实现阶乘的代…

js实现阶乘

js实现阶乘

递归实现阶乘 递归是一种常见的阶乘实现方式,通过函数调用自身逐步分解问题。 function factorialRecursive(n) { if (n === 0 || n === 1)…

实现阶乘JS

实现阶乘JS

递归实现阶乘 递归是一种直接按照数学定义实现阶乘的方法。n的阶乘可以表示为n乘以(n-1)的阶乘,基础情况是0的阶乘为1。 function factorialRecursive(n) { if…

js实现阶乘之和

js实现阶乘之和

实现阶乘之和的方法 阶乘之和是指从1到n的阶乘相加的结果。例如,n=3时,阶乘之和为1! + 2! + 3! = 1 + 2 + 6 = 9。以下是几种实现阶乘之和的JavaScript方法。 方法…

php怎么实现阶乘

php怎么实现阶乘

PHP 实现阶乘的方法 阶乘(Factorial)是一个数学运算,表示从 1 到该数的所有正整数的乘积。例如,5 的阶乘(5!)等于 1 × 2 × 3 × 4 × 5 = 120。PHP 可以通过多…