# 打印斐波那契数列
"""
思考:
1、斐波那契数列是谁发明的?
2、斐波那契数列有什么应用场景?
3、请思考一下:为什么不在调用函数之后赋值提示语?
介绍:
斐波那契数列又称:兔子数列
公式: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、全局变量定义、函数作用域内修改,使用global
3、循环语句/条件语句:while、for/if、elif、else
不足(待改善):
1、本程序比较粗糙,有心之人可以做一些改良,比如,增加一下条件,防止程序直接报错退出
"""
# 定义全局变量
message = '请输入≥3的整数:' # 提示语
# 函数封装
def fibonacci(num):
f1 = 1
f2 = 1
# 输入整数小于3,重新输入
if num < 3:
global message # 函数修改全局变量声明
message = '请重新输入≥3的整数:' # 提示语
return
print('{} {}' .format(f1, f2), end=' ') # 打印f1/f2
for i in range(1, num-1):
print(f1+f2, end=' ') # 打印斐波那契数列
# 数值往后移
f2 = f1 + f2
f1 = f2 - f1
print() # 结束打印换行
while not False: # not False 等价于 True
# 请输入一个整数
num = int(input(message))
message = '请输入≥3的整数:' # 提示语
fibonacci(num) # 调用函数
运行结果:
作者:周华
创作日期:2022/5/26



