Project Euler の質問をもう一度試みています。問題 2で、400 万未満のフィボナッチ数列のすべての偶数の合計を求めるよう求められています。以下のコードでは、While ループ (コード内のコメントとして示されています) を使用してそれを行うことができますが、for ループは使用しません (膨大な数が得られ、400 万を超える 'c' の方法が必要です.
ここで for ループが機能しないのはなぜですか?
ありがとう。
def fibo():
z=[]
a=1
b=1
c=0
for c in range(0,4000000): #doesn't work; works with while (c<4000000)
c = a+b
if c%2 == 0 and c<4000000:
z.append(c)
a=b
b=c
print c
print 'sum is',sum(z)
fibo()