CODIGO:
#include
int fibonacci (int n) {
if(n <= 1)
return n;
else
return (fibonacci(n - 1) + fibonacci(n - 2));
}
int main (void) {
int x;
printf("Fibonacci -> ");
scanf("%d", &x);
printf("Fibonacci (%d) = %d", x, fibonacci(x));
return 0;
}
¿Cómo funciona el código?
Una vez mas centremonos en el bloque recursivo
int fibonacci (int n) {
if(n <= 1)
return n;
else
return (fibonacci(n - 1) + fibonacci(n - 2));
}
Supongamos que int n = 5, entonces:

Aquí comienza la regresión

Asi la función main imprime el valor final de la sucesión fibonacci de 5, es decir Fibonacci (5) = 5
DESCARGA: fibonacci.c
Muy bien. En particular es bueno que explicas el flujo de control. Te pongo cinco puntos para el lab por esta entrada.
ResponderEliminar