Рекурсивная функция
function factorial(x){ if (x == 1) return 1; document.write(x + " Hello<br>"); return x * factorial(x-1);// return x - factorial(x-1); } Когда стоит умножение или сума все нормально, но когда стоит минус никак не могу понять как выполняется выражение! Если *: n * (n-1) * (n-2) * ... * 1 Какая формула при отнимании и делении в таком случая? |
Каком еще делении?
|
ну пусть будет отнимание, какая формула?
|
JS&PHP,
вариант <!DOCTYPE HTML> <html> <head> <title>Untitled</title> </head> <body> <script> function factorial(a) { var b = 0, c = a; return function d() { if (1 == a || b > a - 2) return c; b++; c *= a - b; document.write(a + " " + (a - b) + " " + c + " Hello<br>"); return d() }() }; document.write(factorial(9)) </script> </body> </html> |
Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 06:15. |