【发布时间】:2018-11-18 13:38:18
【问题描述】:
我定义了一个计算斐波那契数的函数,效果很好。
现在我正在尝试将所有偶数斐波那契数
def fib_iterative(n):
a, b = 0, 1
for i in range(0, n):
a, b = b, a + b
return a
def sum_even_fibs(n):
total = 0
n = 0
while fib_iterative(n) < 4000000:
if fib_iterative(n) % 2 == 0:
total += fib_iterative(n)
n += 1
return total
print(sum_even_fibs(10))
# 1,1,2,3,5,8,13,21,34,55.
# 2 + 8 + 34 = 44
【问题讨论】:
-
备注:odd+odd=even 和 even+odd=odd,因此偶数斐波那契数适用于 n%3 == 2。
标签: python-3.x while-loop fibonacci