【发布时间】:2018-09-04 18:05:55
【问题描述】:
我正在尝试使用动态编程来实现斐波那契数列。 它显示一个错误。这里有什么问题?
def fibo(n): # n is the nth Fibonacci no. in the sequence
fib = {} # dict to store earlier values
for k in range(1, n + 1): # iterating each time
if k <= 1 :
f = 0
if k == 2 :
f = 1
else:
f = fib[k - 1] + fib[k - 2] # looking up in the fib{}
fib[k] = f
return fib[n] # returns the nth Fibonacci number
n = int(input('Enter n = '))
print('%dth fibo no. is = %d' %(n, fibo(n))) # calling n printing
【问题讨论】:
-
显示错误消息也会很有帮助。
-
首先,您应该确保您在这个问题中的缩进与您在程序中的缩进匹配。 Python 对代码中的缩进非常敏感,它将帮助我们确定您的错误是逻辑错误还是语法错误
标签: python dynamic-programming