题目:斐波那契数列。
程序分析:斐波那契数列(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)
程序
# 方法1,输入数列,从0个值一直叠加到最后一个值,数列输出 def fib_seq(n): fib_seq = [] i = 0 while i <= n: if i == 0: fib_seq = [0] i += 1 elif i == 1: fib_seq.append(1) i += 1 else: fib_seq.append(fib_seq[i - 1] + fib_seq[i - 2]) i += 1 return fib_seq fib_seq = fib_seq(10) print(fib_seq) # 方法2# 方法内部调用方法,输出最后一个值,直接函数内部迭代 def fib_seq_num(n): if n == 0: return 0 elif n == 1 or n == 2: return 1 else: return fib_seq_num(n - 1) + fib_seq_num(n - 2) fib_seq_num1 = fib_seq_num(10) print(fib_seq_num1)