2

奇怪的是,我的代码给了我第 4781 个数字,当我知道它是第 4782 个斐波那契数时(我正在和一个朋友比较)。在我的代码可以做到之前,我不想提交。

这是我的代码:

import sys
FibNums = []
a=1
b=2
c=3
FibNums.append(a)
FibNums.append(b)
FibNums.append(c)
for i in range(1, sys.maxsize):
    a = b
    b = c
    c = a + b
    FibNums.append(c)
    if len(str(c)) == 1000:
         break
 print (len(FibNums))

谁能帮我找出错误?我检查了一下,我的列表没有跳过任何内容(它实际上包含 1 作为第一个索引)。谢谢!

4

1 回答 1

9

前两个斐波那契数是 1 和 1,而不是 1 和 2。

于 2013-08-09T00:14:14.137 回答