2

奇妙なことに、私のコードは 4782 番目のフィボナッチ数であることを知っているのに、4781 番目の数を与えています (私は友人と比較していました)。ただし、コードで実行できるようになるまで送信したくありません。

これが私のコードです:

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

最初の 2 つのフィボナッチ数は、1 と 2 ではなく、1 と 1 です。

于 2013-08-09T00:14:14.137 に答える