python编写函数求斐波那契数列的某一项_python编写斐波那契数列(一)

对于学习编程语言的小伙伴们来说,斐波那契数列将是一个最经典的函数之一,今天用Python来给大家讲讲这个经典的函数怎么简单粗暴的实现。

实现之前呢,先给大家介绍一下斐波那契数列的原理,原题是一个兔子繁殖问题,简单的讲就是后一项等于前两项之和,即f(x)=f(x-1)+f(x-2),第一项可为0,亦可为1。

下面介绍两种常用的方式,或许没别人写的那么简洁,请见谅哈!

第一种:非递归方式,用的是索引和while循环相结合

# 从零开始,输出前n项斐波那契数列

# 定义斐波那契函数

def fibo(x):

#初始化前两项

m=0

n=1

# 用list存储

l=[0,1]

# 设定初始项

i=2

# 用while循环进行运算,原理:后一项等于前两项之和

while i

# m+n赋值给n

n=m+n

# 将n添加至list

l.append(n)

# 通过索引将list的前一项赋值给m

m =l[i-1]

#通过自加来达到退出循环的条件

i=i+1

#打印出list

print(l)

# 调用函数

fibo(10)

第二种:递归方式实现,这种就是经典模型了

# 从零开始,输出第n项斐波那契数列

def fibo(x):

if x==1:

return 0

elif x==2:

return 1

elif x>2:

return fibo(x-1)+fibo(x-2)

else:

print("输入错误,请重新输入!")

最后留一个问题给各位小伙伴,上面讲述了用递归方式实现了第n项的输出,那么怎么用递归方式实现前n项的输出呢?

结果敬请期待斐波那契数列(二)递归循环

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值