Code Fix

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

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

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

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

空欄を埋めて実行を通す

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

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

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

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

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