Este es un ejemplo que demuestra cómo funcionan las funciones recursivas en C++.
En funciones recursivas, es esencial tener una condición base (en este caso, n == 0
o n == 1
) para evitar que la recursión continúe indefinidamente. Cada llamada recursiva debe acercarse a la condición base.
#include <iostream>
using namespace std;
// Función recursiva para calcular el factorial
unsigned long long factorial(int n) {
if (n == 0 || n == 1) {
return 1;
} else {
return n * factorial(n - 1);
}
}
// Función recursiva para imprimir una cuenta regresiva
void cuentaRegresiva(int n) {
if (n >= 0) {
cout << n << " ";
cuentaRegresiva(n - 1);
} else {
cout << "¡Despegue!" << endl;
}
}
int main() {
int numero = 5;
unsigned long long resultadoFactorial = factorial(numero);
cout << "El factorial de " << numero << " es: " << resultadoFactorial << endl;
cout << "Cuenta regresiva: ";
cuentaRegresiva(5);
return 0;
}
- La función
factorial()
calcula el factorial de un número utilizando recursión. Sin
es 0 o 1, devuelve 1. De lo contrario, calculan * factorial(n - 1)
. - La función
cuentaRegresiva()
imprime una cuenta regresiva utilizando recursión. Imprime el valor actual den
y luego llama a la función conn - 1
. Cuandon
llega a ser negativo, imprime “¡Despegue!”.
Pueder ir al artículo principal:
Códigos Sencillos hechos en C++