わかりました、ちょっと脳を目覚めさせる必要があったからです :-)
count(3)
関数に入り、呼び出しますcount(2)
(2: レベル 2)。
count(2)
関数に入り、呼び出しますcount(1)
(3: 第 3 レベル)。
count(1)
関数に入り、呼び出しますcount(0)
(4: レベル)。
count(0)
関数に入りますが、 false であるため何もせず、まだ 0x>0
である第 4 レベルに戻ります。x
4: レベルが出力さ0
れ、呼び出されますcount(-1)
(5: レベル)
count(-1)
関数に入りますが、は false であるため、何もせず、まだ -1x>0
である第 4 レベルに戻ります。4:th レベルは、まだ 1
である 3:rd レベルに戻ります。x
x
3: 第 3 レベルは出力1
して呼び出しますcount(0)
(第 4 レベル)
count(0)
関数に入りますが、x>0
false であるため、何もせず、x
まだ 0である
第 3 レベルに戻ります。第 3 レベルは、まだ 2 である第 2 レベルに戻りますx
。
2: 第 2 レベルは出力2
して呼び出しますcount(1)
(第 3 レベル)
count(1)
関数に入り、呼び出しますcount(0)
(4: レベル)。
count(0)
関数に入りますが、 false であるため何もせず、まだ 0 x>0
である第 3 レベルに戻ります。x
3: 第 3 レベルは出力0
して呼び出しますcount(-1)
(第 4 レベル)
count(-1)
関数に入りますが、は false であるため、何もせず、まだ -1 x>0
である 3:rd レベルに戻ります。x
3:rd レベルは、x
まだ 1 である
2:nd レベルに戻ります。2:nd レベルは、1:st レベルに戻り、完了です。
出力は0 1 2 0
です。
これを本当に理解したい場合は、count(4) で試してみることをお勧めします。