【发布时间】:2017-03-06 16:35:35
【问题描述】:
# program to generate the Fibonacci sequence
a, b=0,1
while b<10:
Print b
a, b=b,a+b
# my intuitive substitute
a=0
b=1
while b<10
print b
a=b
b=a+b
上面的 sn-p 包含两个程序,一个来自 Python 文档,另一个来自直觉我,我认为它们都会产生相似的结果,但前者输出 1 1 2 3 5 8 和后者 1 2 4 8。一个好心的撒玛利亚人能解释一下为什么吗?
【问题讨论】:
-
请在此处发布代码。之后就可以链接了
-
如果你指定
a=b和然后b = a+b,那么你只是加倍了b。所以你已经做了一个加倍序列。但是,如果您同时更新a和b,则将a的旧值添加到b,因此您得到一个斐波那契数列。