再帰関数、炎上

2025.8.23更新

再帰関数、炎上

解説

def multiply(a, b):

→ aとbの掛け算の関数:

if b == 0: return 0

→ # bが0なら0を返す

return a + multiply(a, b - 1)

→ # 再帰的に掛け算を行う(aをb回足す)

multiply(3, 4)

→ # 12になる (再帰関数を実行してパソコンが文字通り「炎上」)

このミームへの反応

If you're calling it with 3 and 4 that's fine.

→ その再起関数でも3×4程度なら燃えないから大丈夫。笑

Now call it with 3 and 4.5 💀

→ じゃあ3×4.5で実行してみたいね(b==0にならず無限再起になって燃える💀)

icon
この再帰関数は正しく動くものの、現実のプログラムでは再帰を使うのは非効率的な場面が多く、 特に無限再帰や大きな数を扱うとスタックオーバーフローを引き起こしがちです。 それを実行したらPCが燃えます。

関連ミーム