|
Штудирую книгу ильи) усложнил себе задание
вот тут решил хитрую штуку замутить, и сделать через while рекурсию парсить) и не выходит.
var num = prompt("число",2);
var exp = prompt("степень", 10);
var result = 1;
var cnt = 1;
function pow(num, exp){
while(cnt<=exp){
result*=num;
cnt++;
}
return alert(result);}
мб помогут разобраться где я делю ошибку, через цикл фор все должно прекрасно работать а с вайлом беда) давайте раберемся ребята) |
kaflan,
function pow(){
var num = prompt("число",2);
var exp = prompt("степень", 10);
var result = 1;
var cnt = 1;
while(cnt<=exp){
result*=num;
cnt++;
}
return result}
alert(pow());
|
А в чем проблема? Твой код работает
var num = prompt("число",2);
var exp = prompt("степень", 10);
var result = 1;
var cnt = 1;
function pow(num, exp){
while(cnt<=exp){
result*=num;
cnt++;
}
return alert(result);}
pow(num, exp)
Проблема в том, что ты ее не вызвал?:) Или "рекурсию парсить" не получается? Попробуй через моноид, в категории эндофункторов. |
Цитата:
|
Цитата:
|
Цитата:
По поводу парсинга -- тоже не в кассу. Парсинг -- это обработка текста, грубо говоря. Не употребляй слова, значения которх не знаешь. |
Цитата:
|
Цитата:
|
Цитата:
fact=function(n){if(n<2) return n; return n*fact(n-1)}
alert(fact(5))
// 120
И нет тут никакой рекурсии в рекурси, это просто рекурсия. И это не здорово, просто иногда бывает удобней написать рекурсивно, например, при обходе дерева, но в общем случае, такого кода надо избегать, так как это дерьмо отжирает много памяти. Любой рекурсивный код можно переписать в виде цикла. |
Цитата:
|
| Часовой пояс GMT +3, время: 02:36. |
|