Возвращает 1 в момент, когда Input == 1
.
Но возвращаемое значение 1 используется с предыдущим вызовом, умноженным на Input
, возвращаемое значение которого используется с предыдущим вызовом,умноженное на Input
, возвращаемое значение которого используется с предыдущим вызовом, умноженное на Input
, возвращаемое значение которого используется с предыдущим вызовом, умноженное на Input
... до тех пор, пока вы не вернетесь кпервый вызов Recursive
.
Попробуйте посмотреть, что происходит, когда вы звоните Recursive
со значением 3
:
- input is not 1, so it calls Recursive with the value 2
- input is not 1, so it calls Recursive with the value 1
- input is 1, 1 is returned
- 2 * 1 is returned
- 3 * 2 is returned