Fibonacci数列的特点是:前两个数为1,1,从第3个数开始,该数是前两个数之和,即
F1 = 1
F2 = 1
Fn = Fn-1 + Fn-2 。
用python中的迭代方法解决如下:
def fibonacci():
a, b = 0, 1
i = int(input('input a integer:'))
if i > 0:
for n in range(i):
print(b)
a, b = b, a + b
else:
print('the number should greater than 0!')
fibonacci()
fibonacci()i 表示要列出的Fibonacci的位数,然后根据 i 的值做for循环,得到Fn,即赋值语句中所解释的,c的值。
赋值语句 a, b = b, a + b 的含义是:
c = a +b
a = b
b = c
这里只是省略掉了一个临时变量c,其表达效果等同于:
tuple = (b, a+b)
a=tuple[0]
b=tuple[1]
运行结果如下:
input a integer:6
1
1
2
3
5
8
Process finished with exit code 0
版权声明:本文为weixin_43058726原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。