Introducción
En este laboratorio, aprenderemos a usar la recursión para encontrar la suma de los primeros N números. Usaremos el lenguaje de programación C para escribir un programa que tome una entrada del usuario, calcule la suma de los primeros N números y muestre el resultado al usuario. La recursión es una técnica utilizada en la programación en la que una función se llama a sí misma para resolver un problema.
Creando un archivo y definiendo la función principal
Primero, crearemos un nuevo archivo llamado main.c. La función principal toma una entrada del usuario para el valor de N, pasa esta entrada a la función de suma recursiva y luego muestra el resultado.
#include<stdio.h>
int getSum(int);
int main()
{
printf("Este programa encuentra la suma de los primeros N números usando recursión.\n");
int n, sum;
printf("\nIngrese el valor de N: ");
scanf("%d", &n);
sum = getSum(n);
printf("\nLa suma de los primeros %d números es %d\n", n, sum);
return 0;
}
Definiendo la función de suma recursiva
En este paso, definiremos la función de suma recursiva getSum(). Esta función toma un parámetro entero n y devuelve la suma de los primeros n enteros. Esta función se llama recursivamente hasta que llegamos a un caso donde n es menor o igual a 0.
int getSum(int n)
{
static int sum = 0;
if (n <= 0) {
return sum;
}
sum += n;
getSum(n-1);
}
La declaración static int sum = 0; se utiliza para crear una variable local estática. Dado que se trata de una recursión, la misma variable se utilizará cada vez que se llame a getSum() múltiples veces.
Ejecutando el código
El programa ya está listo para ejecutarse. Compile y ejecute el programa usando el siguiente comando:
$ gcc main.c -o main
$./main
Lista completa de código
#include<stdio.h>
int getSum(int);
int main()
{
printf("Este programa encuentra la suma de los primeros N números usando recursión.\n");
int n, sum;
printf("\nIngrese el valor de N: ");
scanf("%d", &n);
sum = getSum(n);
printf("\nLa suma de los primeros %d números es %d\n", n, sum);
return 0;
}
int getSum(int n)
{
static int sum = 0;
if (n <= 0) {
return sum;
}
sum += n;
getSum(n-1);
}
Resumen
En este laboratorio, aprendimos cómo usar la recursión en el programa C para encontrar la suma de los primeros N números. Creamos un programa que toma la entrada del usuario, utiliza una función recursiva para calcular la suma de los primeros N enteros y muestra el resultado al usuario.



