Дописать код нахождения факториала
Дописать код в соответствии с инструкциями в задании
В теле функции дописать ИТЕРАТИВНЫЙ (то есть с помощью цикла) алгоритм нахождения факториала. var input = prompt("Введите число: "); input = parseInt(input); function factorial(x) { if (x <= 1) return 1; var result = 1; for(var i = x; ) { result = } return result; } document.write("Факториал " + input + "! = " + factorial(input)); Как будет правильно и почему не работает: for(var i = x-1; i>1; i--) { result = x *= i; } |
novicer,
<script> var input = 5//prompt("Введите число: "); input = parseInt(input); function factorial(x) { if (x <= 1) return 1; var result = 1; for(var i = x; i;) { result *= i-- } return result; } document.write("Факториал " + input + "! = " + factorial(input)); </script> |
Спасибо, но не подходит. Делаю тест на одном сайте (правила форума еще не читал, не знаю можно ли его указать), там код проверяется автоматически.
|
Разобрался сам =)
var input = prompt("Введите число: "); input = parseInt(input); function factorial(x) { if (x <= 1) return 1; return x * factorial(x - 1); } document.write("Факториал " + input + "! = " + factorial(input)); |
Цитата:
Вообще не стоит применять рекурсивные вызовы если есть простой аналог с циклом. |
Часовой пояс GMT +3, время: 23:41. |