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