Posted at

再帰

More than 1 year has passed since last update.

同じく書籍より


def fact(x):
if x == 1:
return 1
else:
return x * fact(x-1) #再帰で階乗を計算している

fact(3) > 6 #3*2*1 = 6となる 3!階乗計算

fact(3)呼び出しで

return x * fact(x-1) # 3 x 2

すぐにfact(2)呼ばれて

return x * fact(x-1) # (3*2) x 1

みたいな階乗計算(スタックのように積み重なっているイメージかな)