Рекурсивная функция
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, время: 15:03. |