斐波那契数列:1,1,2,3,5,8,13,21...即: 起始两项均为1,之后的项分别是前两项之和,以此类推.......
使用函数的方法打印前10项斐波那契数列。
方法一:
def fibo(n):
if n == 1 or n == 2:
return 1
if n >= 3:
return fibo(n-1)+fibo(n-2)
i = 1
while i <= 10:
print(fibo(i),end=" ")
i += 1
输出:1 1 2 3 5 8 13 21 34 55
------------------------------------------------------------------
方法二:
def fibo(n):
i, a, b = 0, 0, 1 # 给变量赋值
while i <= n:
print(b, end=" ")
a, b = b, a + b # 值交换
i += 1
fibo(10)
----------------------------------------------------------------------------
方法三:
def fibs(n):
if n == 0 or n == 1:
return 1
else :
return fibs(n-1) + fibs(n-2)
for i in range(10): // 用rang的方法生成遍历
print(fibs(i),end=" ")
------------------------------------------------------------------------------
使用递归的方法打印斐波那契Fibonacci 数列。
def fibo(n): # n为项数
if n == 1 or n == 2:
return 1
if n >= 3:
return fibo(n-1)+fibo(n-2)
i = 1
while i <= 15: # 这里只打印前15项
print(fibo(i),end=' ')
i += 1