可以使用遞歸或循環(huán)來求解斐波那契數(shù)列前n項和。
使用遞歸方法:
def fibonacci(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
return fibonacci(n-1) + fibonacci(n-2)
def fibonacci_sum(n):
if n <= 0:
return 0
else:
return sum(fibonacci(i) for i in range(1, n+1))
n = int(input("輸入斐波那契數(shù)列的項數(shù):"))
print("前", n, "項和為:", fibonacci_sum(n))
使用循環(huán)方法:
def fibonacci_sum(n):
if n <= 0:
return 0
elif n == 1:
return 1
else:
fib_list = [0, 1]
for i in range(2, n+1):
fib_list.append(fib_list[i-1] + fib_list[i-2])
return sum(fib_list)
n = int(input("輸入斐波那契數(shù)列的項數(shù):"))
print("前", n, "項和為:", fibonacci_sum(n))
這兩種方法都可以求得斐波那契數(shù)列前n項的和。