码迷,mamicode.com
首页 > 其他好文 > 详细

浅谈悲波那契数列

时间:2019-09-08 22:44:11      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:sequence   append   循环   app   黄金分割   斐波那契数   相加   定义   引入   

悲波那契数列

悲波那契数列的由来

? 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为兔子数列,指的是这样一个数列: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年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

解法

通过列表切分

def  sequence(number):
    # 定义一个列表并将第一位和第二位放上
    l=[1,1]
    #循环写入要添加进l的值
    for i in range(number-2):
        #定义一个列表将l中的最后两位放入里面
        arr = l[-2:]
        #将arr中的第一位和第二位相加并放入l列表中
        l.append(arr[0]+arr[1])
    #打印出l列表
    print(l)
#调用函数
sequence(10)

[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

通过递归

count=0
l=[1,1]
def sequence():
    global l,count
    if count>7:
        return
    arr=l[-2:]
    l.append(arr[0] + arr[1])

    count+=1
    print(l)
    sequence()

sequence()

[1, 1, 2]
[1, 1, 2, 3]
[1, 1, 2, 3, 5]
[1, 1, 2, 3, 5, 8]
[1, 1, 2, 3, 5, 8, 13]
[1, 1, 2, 3, 5, 8, 13, 21]
[1, 1, 2, 3, 5, 8, 13, 21, 34]
[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]

浅谈悲波那契数列

标签:sequence   append   循环   app   黄金分割   斐波那契数   相加   定义   引入   

原文地址:https://www.cnblogs.com/MrYang161/p/11488455.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!