📜  C++程序使用递归查找自然数之和

📅  最后修改于: 2020-09-25 06:21:23             🧑  作者: Mango

通过使用递归函数查找自然数之和的示例。

正数1、2、3 …称为自然数。下面的程序从用户处获取一个正整数,然后计算得出给定数字的总和。

您也可以使用循环找到自然数的总和。但是,您将在此处学习使用递归解决此问题的方法。

示例:使用递归计算自然数之和

#include
using namespace std;

int add(int n);

int main()
{
    int n;

    cout << "Enter a positive integer: ";
    cin >> n;

    cout << "Sum =  " << add(n);

    return 0;
}

int add(int n)
{
    if(n != 0)
        return n + add(n - 1);
    return 0;
}

输出

Enter an positive integer: 10
Sum = 55

在此程序中,用户输入的数字将传递给add() 函数。

假设用户输入了10。现在,将10传递给add() 函数。此函数将10加到9的加法结果中(10-1 = 9)。

下次,将9加到8的相加结果中(9-1 = 8)。当函数返回0时,此过程一直持续到数字达到0为止。

现在,将返回每个函数以计算最终结果:1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10 = 55。