- """
- 打印斐波那契数列
- 介绍:
- 斐波那契数列又称:兔子数列 / 黄金分割数列
- 公式:F(1)=1, F(2)=1, F(3)=F(2)+F(1), F(n)=F(n-1)+F(n-2)......(n>=3 and n为正整数)
- 例如:1 1 2 3 5 8 13 21
- 知识点:
- 1、函数封装
- 2、列表应用
- 3、条件语句
- 4、循环语句
- """
-
-
- # 方法二 ==============================================================
-
- # 打印斐波那契数列
- def fibonacci(num):
-
- if num <= 0:
- return []
- elif num == 1:
- return [1]
- elif num == 2:
- return [1, 1]
-
- elif num >= 3:
- fib_list = fibonacci(num-1)
- fib_list.append(fib_list[-1]+fib_list[-2])
-
- return fib_list
-
-
- while True:
-
- num = int(input('请输入斐波那契数列长度的整数:'))
-
- fib_length = fibonacci(num)
-
- print(f'长度:{fib_length}')
-
-
- print('范围内:', end='')
- for i in fib_length:
- if i <= num:
- print(i, end=' ')
-
- if len(fib_length) == 3:
- print(3, end=' ')
- elif fib_length == []:
- print('空', end=' ')
-
运行结果:
- 请输入斐波那契数列长度的整数:3
- 长度:[1, 1, 2]
- 范围内:1 1 2 3
- 请输入斐波那契数列长度的整数:2
- 长度:[1, 1]
- 范围内:1 1
- 请输入斐波那契数列长度的整数:1
- 长度:[1]
- 范围内:1
- 请输入斐波那契数列长度的整数:0
- 长度:[]
- 范围内:空
- 请输入斐波那契数列长度的整数:-3
- 长度:[]
- 范围内:空
- 请输入斐波那契数列长度的整数:5
- 长度:[1, 1, 2, 3, 5]
- 范围内:1 1 2 3 5
- 请输入斐波那契数列长度的整数:10
- 长度:[1, 1, 2, 3, 5, 8, 13, 21, 34, 55]
- 范围内:1 1 2 3 5 8
作者:周华
创作日期:2023/10/7