|
Штудирую книгу ильи) усложнил себе задание
вот тут решил хитрую штуку замутить, и сделать через 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, время: 08:51. |
|