前言:
本人因喜欢python和c语言等程序设计语言,希望能够在这里和大家共同学习共同进步。
因个人喜好喜欢做题,所以想出一个系列专栏关于python的习题专集,希望大家喜欢。
还是一个小白,接触时间没有很长,如果文章有任何错误,欢迎大家指正。
如果喜欢我的文章还请大家不吝动手给我点赞收藏关注哦,留下你来过的足迹,让我眼熟你。
第三题 斐波那契数列
要求:
意大利数学家列昂纳多·斐波那契在《计算之书》提出了一个有趣的兔子问题。假设有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都存活,问一年后会有多少对兔子?于是得到一个数列:1,1,2,3,5,8,13,21,……,这就是著名的斐波那契数列,又称为黄金分割数列。
可以先自己看要求写出程序,然后看提示及答案,更有助于提高自己。
提示:1.从第3项开始,每一项的数值都是前两项的数值之和
n = int(input("请输入斐波那契数列的项数(大于2的整数):"))
a = [0 for i in range(n)] # 定义列表a
a[0] = 1;a[1] = 1 # 给列表的第一个和第二个元素赋值
i = 2
while i<n:
a[i] = a[i-1] + a[1-2] # 从第3项开始,使用递推公式求解
i = i+1
print(a)
说明:程序代码中的 a=[0 for i in range(n)] 表示创建一个列表a,其中包括n个元素,元素的索引从0~n -1,同时给每个元素初始化为0
保存并运行程序,结果如下所示:
请输入斐波那契数列的项数(大于二的整数) : 10
[1,1,2,3,5,8,13,21,34,55]