gpt4 book ai didi

python - 使用斐波那契程序对偶数元素求和

转载 作者:太空宇宙 更新时间:2023-11-03 13:41:47 25 4
gpt4 key购买 nike

我正在尝试使用 Python 解决以下问题:

斐波那契数列中的每一项都是通过添加前两项生成的。从 1 和 2 开始,前 10 项将是:1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

通过考虑斐波那契数列中值不超过四百万的项,找到偶数项的总和。

到目前为止,我已经能够生成斐波那契元素,但在尝试对偶数元素求和时,我的代码似乎停滞了。这是下面的代码:

def fib(n):
if n==0:
return 0
elif n==1:
return 1
if n>1:
return fib(n-1)+fib(n-2)

n=0
total=0

while fib(n)<=4000000:
if fib(n)%2==0:
total+=fib(n)

print(total)

欢迎提出任何建议。

最佳答案

您有一个无限循环,因为 n 在您的 while 循环中从未从零开始递增。此外,为什么不在同一个 while 循环中对您的 Fibonacci 总和求和 并找到下一个 Fibonacci 值,如下所示:

x= 1
y=1
total = 0
while x <= 4000000:
if x % 2 == 0:
total += x
x, y = y, x + y
print (total)

输出:

4613732

关于python - 使用斐波那契程序对偶数元素求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29394874/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com