斐波那契数列的递归实现

来源:互联网 发布:ci框架数据库授权 编辑:程序博客网 时间:2024/06/06 21:45

def fab(n):
if n<1:
print “输入有误! ”
return -1
if n==1 or n==2:
return 1
else:

    return fab(n-1)+fab(n-2)#为什么只能用return fab(n-1)+fab(n-2)而不能够用函数#fab(n)=fab(n-1)+fab(n-2)#return fab(n)#原因在于return 在返回相应的函数的时候还存在一个函数的调用,因此return fab(n-1)+fab(n-2)相当于在计算的过程中在进行函数的调用,而#简单的return fab(n)则只是调用函数fab(n)因此会造成相应的函数的调用出现问题

result=fab(20)
if result!=-1:
print ‘总共有%s对小兔子诞生!’ % result
这里写图片描述

0 0
原创粉丝点击