Fibonacci iterativo en C

Fibonacci en C – Iterativo y recursivo

Resumen: programar algoritmo Fibonacci en C de manera iterativa (usando un ciclo) y recursiva. También imprimir la sucesión fibonacci.

En este post vamos a trabajar con la sucesión Fibonacci para mostrar el número que iría en determinada posición de la serie; para imprimirla desde el 0 hasta un número y para hacer lo mismo usando recursividad.

Todo esto lo vamos a hacer en el lenguaje de programación C usando ciclos.

El algoritmo

Es muy simple, se comienza en 0 y 1 y después los siguientes números son la suma de los anteriores. Si queremos imprimir la sucesión, usamos printf.

Vamos a hacer funciones que devuelven el número que va en determinada posición de la sucesión. Por ejemplo, ya que la sucesión es:

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765

Podemos decir que el número que va en la posición 7 es 13 (contando desde el 0)

Fibonacci iterativo en C

Veamos la primer función que devuelve el número que va en la sucesión, y que además permite imprimir la misma.

Recibe la posición hasta la que queremos imprimir y un booleano para decir si la sucesión debe imprimirse o no. Devuelve el número de la sucesión fibonacci que va en la posición solicitada.

Su modo de uso es el siguiente, en el primer caso imprimimos la sucesión:

En la línea 1 simplemente invocamos a la función y no necesitamos almacenar el resultado porque simplemente queremos imprimir la sucesión fibonacci en C.

Después, en la línea 4 y 5 almacenamos el valor y no imprimimos la serie. Al final la salida es:

Fibonacci iterativo en C
Imprimir la serie fibonacci en C y obtener el número que va en determinada posición

Si quieres puedes probarlo aquí. Ahora vamos a ver el Fibonacci recursivo en C.

Fibonacci recursivo en C

Lo siguiente es la implementación de este algoritmo pero usando recursividad o recursión. Queda así:

En este caso no imprime nada, simplemente devuelve el número que va en la posición. Por ejemplo:

También puedes ejecutarlo aquí.

Conclusiones y notas finales

No olvides que la función devuelve el número que va en determinada posición pero comienza a contar desde el 0, así como la notación de arreglos; es decir, si quieres el número que va en la primera posición invoca al algoritmo con la posición 0.

 

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario