Sucesion fibonacci en python

 

Bueno después de algunos meses de no postear en el blog, lo vuelvo a hacer y en esta ocasión el ejemplo que les dejo es como crear la SUCECION DE FIBONACCI en python.

 

CODIGO PYTHON

fibonacci=[]
x=0
y=1
num = int(input("Numero de elementos:"))
for n in range(num):
    fibonacci.append(x+y)
    aux = x + y
    x = y
    y = aux
print(fibonacci)

 

El código anterior declara una lista con el nombre fibonacci  la cual almacenara los números de la sucesión, también se declaran las variables x, y con sus valores iniciales 0 y 1 respectivamente. La otra variable declarada es num la cual almacenara la cantidad de números a mostrar en base a lo que el usuario indique.

Posteriormente hay un ciclo que se repetirá x numero de veces y en el cual se van almacenando los números en la lista fibonacci, al final solo se imprime la lista.

Espero que les sea de utilidad.

8 comentarios en “Sucesion fibonacci en python”

  1. Jaz dice:

    Muchas gracias, justo lo que necesitaba para mi tarea. Quizá tendría que añadirle unas cuantas cosas si quisiera que apareciera desde 0, 1, 1, … , pero ha sido de una gran utilidad su publicación.

    1. Fernando dice:

      Solo cambia el valor de x a -1

  2. Karla dice:

    Qué es lo que haces cuando dices fibonacci.append(x+y)
    Yo sé que lo que haces es añadir a la lista fibonacci la suma de x+y , y luego el aux qué valores toma?
    Gracias

  3. Mikaela dice:

    Hola, tengo que escribir una función que calcule en forma recursiva los números de la sucesión de Fibonacci que tenga como parámetro de entrada un entero n y retorne el n-ésimo número de la sucesión.
    Me podrías explicar como puedo hacer? Gracias

  4. aldair dice:

    a=0
    b=1
    num = int(input(“Numero de elementos:”))
    for n in range(num):
    print(b)
    suma = a + b
    a = b
    b = suma

  5. Lyan dice:

    hola que tal puedes responder a la pregunta de Karla del dia
    14 septiembre, 2014 a las 15:50

  6. darkcode01 dice:

    Tengo dos formas de hacer, de esas formas comenzará desde 1,

    # /usr/bin/env python

    def s_f(l):
    _inicio = 1
    _anterior = 0
    yield 1
    for x in range(l)
    yield _inicio
    _inicio += _inicio
    _anterior = _inicio
    ————————-‘—–‘-‘-”’-””-
    la funcion s_f retornaria un generador, luego hacemoa un for y lo recorremos.
    ————$—;-,’,’—__—-“-#——-#-#-#-

    l = 14
    i = 1
    a = 0
    output = [1]
    for x in range(l):
    output.append(i)
    i += i
    a = i

    print output
    #[1,1,2,4,8,16,32,64,128,256,512,1024,2048,4096]

    valor = s_f(3)
    print valor.next() #el metodo next es para imprimir los valores de uno en uno del generador

    #
    1
    valor = [x for x in valor]
    print valor

    [1,1,2,4,8,16,32,64,128,256,512,1024,2048,4096]

Deja un comentario