Code Fix

上級 › 再帰の終了条件が無いときの原因と直し方 › パターン4

再帰の終了条件が無いときの原因と直し方

再帰関数に終了条件(ベースケース)が無い、または正しく機能していないときに発生します。

 1  def fibonacci(n):
 2      ___________________
                 ^
 3      return fibonacci(n - 1) + fibonacci(n - 2)
 4  
 5  print(fibonacci(5))
Traceback (most recent call last): File "main.py", line 5, in <module> print(fibonacci(5)) ^^^^^^^^^^^^ File "main.py", line 3, in fibonacci return fibonacci(n - 1) + fibonacci(n - 2) ^^^^^^^^^^^^^^^^ ...(同じ行が何度も繰り返される)... RecursionError: maximum recursion depth exceeded

空欄を埋めて実行を通す

広告
広告スロット(未設定)

再帰の終了条件が無いときの原因と直し方

再帰は必ずどこかで止まる条件が必要です。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)