La secuencia de Fibonacci es una serie matemática infinita de números en la que cada número es la suma de los dos anteriores. La secuencia comienza con 0 y 1, y los números siguientes son 1, 2, 3, 5, 8, 13, 21, 34, y así sucesivamente. Formalmente, la secuencia de Fibonacci F(n) se define por la siguiente relación de recurrencia:
F(n) = F(n-1) + F(n-2)
Con las siguientes condiciones iniciales:
Veamos cómo podemos aplicar esta expresión matemática en Python, utilizando los conocimientos adquiridos en el curso sobre listas y bucles.
Primeramente, debemos declarar una lista que guardará los números de nuestra secuencia. En ella, debemos inicializar por defecto los valores de las condiciones iniciales.
secuencia = [0,1]
Luego, declaramos una variable que almacenará un número entero positivo que digite el usuario.
n = input("Digita un numero entero positivo: ")
Estas son nuestras herramientas necesarias con las cuales ya podemos empezar a operar.
Nos apoyaremos de un ciclo while que se repetirá siempre y cuando el tamaño de nuestra lista sea menor al número entero positivo que el usuario ha digitado por teclado. Esto hará que la lista se llene solo con una cantidad finita de números (la que el usuario desee calcular). También usaremos el método append para insertar los números en la lista pues este permite que:
La declaración del while queda de la siguiente manera:
whilelen(secuencia) < int(n):
Recordando que se debe pasar a entero el número que el usuario ha digitado por teclado, pues inicialmente viene como un string.
Ahora debemos pasar la función matemática que he presentado arriba a algo que Python pueda realizar. Esto queda de la siguiente forma:
secuencia.append(secuencia[-1] + secuencia[-2])
A la lista que declaramos en un inicio le estamos agregando al final la suma del último y antepenúltimo elemento.
Finalmente, solo resta imprimir la lista con la secuencia deseada:
print(secuencia)
Espero que todo haya quedado claro, no duden en dejar recomendaciones.
Un abrazo.