Suma de números naturales usando recursividad

Dado un número n, encuentre la suma de los primeros n números naturales. Para calcular la suma, usaremos una función recursiva recur_sum().
Ejemplos: 
 

Input : 3
Output : 6
Explanation : 1 + 2 + 3 = 6

Input : 5
Output : 15
Explanation : 1 + 2 + 3 + 4 + 5 = 15

A continuación se muestra el código para encontrar la suma de números naturales hasta n usando recursividad: 
 

C++

// C++ program to find the
// sum of natural numbers up
// to n using recursion
#include <iostream>
using namespace std;
 
// Returns sum of first
// n natural numbers
int recurSum(int n)
{
    if (n <= 1)
        return n;
    return n + recurSum(n - 1);
}
 
// Driver code
int main()
{
    int n = 5;
    cout << recurSum(n);
    return 0;
}

Java

// Java program to find the
// sum of natural numbers up
// to n using recursion
import java.util.*;
import java.lang.*;
 
class GFG
{
 
    // Returns sum of first
    // n natural numbers
    public static int recurSum(int n)
    {
        if (n <= 1)
            return n;
        return n + recurSum(n - 1);
    }
     
    // Driver code
    public static void main(String args[])
    {
        int n = 5;
        System.out.println(recurSum(n));
    }
}
 
// This code is contributed by Sachin Bisht

Python

# Python code to find sum
# of natural numbers upto
# n using recursion
 
# Returns sum of first
# n natural numbers
def recurSum(n):
    if n <= 1:
        return n
    return n + recurSum(n - 1)
 
# Driver code
n = 5
print(recurSum(n))

C#

// C# program to find the
// sum of natural numbers
// up to n using recursion
using System;
 
class GFG
{
 
    // Returns sum of first
    // n natural numbers
    public static int recurSum(int n)
    {
        if (n <= 1)
            return n;
        return n + recurSum(n - 1);
    }
     
    // Driver code
    public static void Main()
    {
        int n = 5;
        Console.WriteLine(recurSum(n));
    }
}
 
// This code is contributed by vt_m

PHP

<?php
// PHP program to find the
// sum of natural numbers
// up to n using recursion
 
// Returns sum of first
// n natural numbers
function recurSum($n)
{
    if ($n <= 1)
        return $n;
    return $n + recurSum($n - 1);
}
 
// Driver code
$n = 5;
echo(recurSum($n));
 
// This code is contributed by Ajit.
?>

Javascript

<script>
 
// JavaScript program to find the
// sum of natural numbers
// up to n using recursion
 
// Returns sum of first
// n natural numbers
function recurSum(n)
{
    if (n <= 1)
        return n;
    return n + recurSum(n - 1);
}
 
// Driver code
let n = 5;
document.write(recurSum(n));
 
// This code is contributed by mohan
 
</script>

Producción : 

15 

Complejidad del tiempo : O(n)

Espacio auxiliar : O(n)

Para resolver esta pregunta, el enfoque iterativo es el mejor porque toma un espacio auxiliar constante o O(1) y la complejidad del tiempo será la misma O(n).

Publicación traducida automáticamente

Artículo escrito por Pushpanjali chauhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *