我的目标是制作一些表示斐波那契螺旋的代码。在我的冒险中,我找到了一些代码来制作一个。我想研究它,看看它能做什么。然而,我似乎得到了错误的输出
def fibonachi(n):
if n < 0:
print("Incorrect number")
elif n == 1 or n == 2:
return 1
else:
return fibonachi(n - 1) + fibonachi(n - 2)
print(fibonachi(9))
预期输出:15(原因8+7=15) 实际产出:34
这与应该发生的事情是一致的,但我不明白这是怎么发生的。有人能解释一下吗
好了,现在我明白了
基本上,当我调用fibo9时,我编写的代码告诉它调用fibo8和fibo7。这两个分离成各自的fibo,直到N==1或2。然后,代码将其全部添加到一个漂亮的34中
您没有实现以下情况
n == 0
:相关问题 更多 >
编程相关推荐