第六天
斐波那契
斐波那契数列是一个经典的数学序列,由意大利数学家莱昂纳多・斐波那契(Leonardo
Fibonacci)在 13 世纪提出。这个数列的特点是:每个数都是前两个数的和,起始于 0 和 1。
斐波那契数列的递归定义如下:
- F(0) = 0
- F(1) = 1
- 对于 n > 1,F (n) = F (n-1) + F (n-2)
def fib(n):
"""计算斐波那契数列的第n项"""
a, b = 0, 1
for _ in range(n):
a, b = b, a + b
return a
def fib_sequence(count):
"""生成前count项斐波那契数列"""
a, b = 0, 1
for _ in range(count):
yield a
a, b = b, a + b
if __name__ == "__main__":
n = 10
print(f"第 {n} 项: {fib(n)}")
print(f"前 {n} 项: {list(fib_sequence(n))}")