斐波那契数列

斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家莱昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义: F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*) 在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从 1963 年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

# 斐波那契数列
cache = {}

def fib(number):
    if number in cache:
        return cache[number]
    if number == 0 :
        cache[number]=0
        return cache[number]
    if number == 1:
        cache[number]=1
        return cache[number]
    else:
        cache[number] = fib(number - 1) + fib(number - 2)
    return cache[number]

if __name__ == '__main__':
    N = int(input("输入F(N)中N的值:"))
    for i in range(N+1):
         fib(i)    
         print("F({})=".format(i),cache[i]) 


    # 打印F(N)的值

    # print("F({})=".format(N),cache[N]) 
    # 打印字典数据
    print(cache) 
斐波那契数列_第1张图片

你可能感兴趣的:(python学习,python)