CODIGO:
#includeint 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