Fibonacci numbers

Recursive definition:

def fibo(n):
    if n == 0: return 0
    if n == 1: return 1
    if n == 2: return 1
    return fibo(n-1) + fibo(n-2)
def fibonacci(n):
    result= []
    a,b= 0,1
    while a < n:
        result.append(a)
        a,b= b, a+b
    return result

Complete:

def fibo(n):
    if n == 0: return 0
    if n == 1: return 1
    if n == 2: return 1
    return fibo(n-1) + fibo(n-2)


def fibonacci(n):
    result= []
    a,b= 0,1
    while a < n:
        result.append(a)
        a,b= b, a+b
    return result

if __name__ == '__main__':
    print fibo(5000)


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

Leave a comment