斐波那契数列如下:
1、1、2、3、5、8、13、21、34 . . .
要求第n项斐波那契数列的值不难发现一个规律:
- 当n=1的时候对应的值是1
- 当n=2的时候对应的值是1
- 当n>2的时候对应的值等于前两项的和。
编程思路
# 创建一个带参数的函数,返回对应的斐波那契数列的值
def fib(n):
pass
如果这个函数的功能是完整的那么当我调用函数的时候结果应该如下:
fib(1)
=1
fib(2)
=1
重点关注以下规律
fib(3)
=1+1=fib(1)
+fib2
fib(4)
=1+2=fib(2)
+fib(3)
fib(5)
=2+3=fib(3)
+fib(4)
. . .
fib(n)
=fib(n-1)
+fib(n-2)
根据上述规律就可以把代码补充完整了
def fib(n):
if n == 1:
return 1
elif n == 2:
return 1
elif n > 2:
return fib(n-1) + fib(n-2)