Python教程

利用递归函数求斐波那契值python版

本文主要是介绍利用递归函数求斐波那契值python版,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#自定义函数fib求第n个斐波那契值
def fib(n):
    if n==0:#当n为0时返回0
        return 0
    elif n==1:#但n为1时返回1
        return 1
    else:#当n大于1时,用递归的方法调用函数求第n-1和第n-2个斐波那契值
        return fib(n-1)+fib(n-2)
n=int(input())
print(fib(n))
"""语句 return fib(n-1)+fib(n-2)的意思就是向前求斐波那契值,直到n-1=1,n-2=0
因为只有第1个和第0个斐波那契值是确定的
例:
当n=3时
第一次调用函数fib会执行第三条语句(因为n>1)这样求回返回fib(2)+fib(1)
第二次调用函数时,因为2>1所有会返回fib(1)+fib(0);因为1不大于1,所以调用函数时
  会执行第二条语句返回1值。
第三次调用函数,会执行第一和第二条语句,依次返回0和1从而求得fib(2)
   fib(3)=fib(2)+fib(1)
   fib(2)=fib(1)+fib(0)
   即fib(3)=fib(1)+fib(0)+fib(1)=2*fib(1)+fib(0)"""

这篇关于利用递归函数求斐波那契值python版的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!