JavaScript 使用递归计算自然数之和的程序

要理解此示例,您应了解以下 JavaScript 编程 主题


1, 2, 3, ... 这些正整数被称为自然数。

示例:使用递归查找自然数之和

// program to find the sum of natural numbers using recursion

function sum(num) {
    if(num > 0) {
        return num + sum(num - 1);
    }
    else {
        return num;
    }
 }

// take input from the user
const number = parseInt(prompt('Enter a positive integer: '));

const result = sum(number);

// display the result
console.log(`The sum is ${result}`);

输出

Enter a positive integer: 5
The sum is 15

在上面的程序中,会提示用户输入一个数字。

然后调用 sum() 函数,并将用户输入的参数(此处为5)传递进去。

  • 如果数字大于0,则函数会通过将数字减1来调用自身。
  • 这个过程一直持续到数字变成1。当数字达到0时,程序停止。
  • 如果用户输入负数,则返回该负数,程序停止。

这里,

sum(5) returns 5 + sum(4)
sum(4) returns 5 + 4 + sum(3)
sum(3) returns 5 + 4 + 3 + sum(2)
sum(2) returns 5 + 4 + 3 + 2 + sum(1)
sum(1) returns 5 + 4 + 3 + 2 + 1 + sum(0)
sum(0) returns 5 + 4 + 3 + 2 + 1 + 0

另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战