题目:斐波那契数列。(解法二)

xiaoxiao2021-02-28  119

程序分析:斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……。

数学上的解法是:

F0 = 0 (n=0) F1 = 1 (n=1) Fn = F[n-1]+ F[n-2](n=>2) 我是小白,大神无笑话小弟,只是想记录下来自己的思路,根据我自己的理解尝试一下:

def fib(n): F(0)=0 F(1)=1 if n>2: for i in range(n): F(i+2)=F(i+1)+F(i) print(F(i+2)) # 输出了第10个斐波那契数列 fib(10) 运行提示错误:SyntaxError: can't assign to function call

接着我参考了大神们的解法,发现函数可以在内部调用其它的函数;调用自身的函数称为递归函数:

def fib(n): if n == 1 or n == 2: return 1 return fib(n - 1) + fib(n - 2) # 输出了第10个斐波那契数列 print(fib(10)) 结果输出:55 正确。

转载请注明原文地址: https://www.6miu.com/read-20849.html

最新回复(0)