使用python求斐波那契数列中第n个数的值示例代码

斐波那契数列(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>=2,n∈N*)

求斐波那契数列中第n个数的值:1,1,2,3,5,8,13,21,34…

方法一:用for循环

n = int(input('请输入要一个整数:'))
n_2 = 0
n_1 = 1
current = 1
for x in range(2, n+1):
  current = n_2 + n_1
  n_2 = n_1
  n_1 = current
print('第%d个数是%d'%(n, current))

方法二:递归函数

def fab(n):
  if n == 1 or n == 2:
    return 1
  return fab(n-1) + fab(n-2)

print(fab(5))

方法三:生成器

def fib(n):
  a, b = 0, 1
  for _ in range(n):
    a, b = b, a + b
    yield a
    
for val in fib(20):
  print(val)

总结

到此这篇关于使用python求斐波那契数列中第n个数的值的文章就介绍到这了,更多相关python斐波那契数列第n个数的值内容请搜索呐喊教程以前的文章或继续浏览下面的相关文章希望大家以后多多支持呐喊教程!

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。