по книге "самоучитель javascript" автор Вадим Дунаев. function factorial(n){ if(n<=1) return 1 rezult = 3 for(i=1;i<n;i++){ rezult = rezult * i } return result } var m = 10 x = factorial(m) document.write(x) не могу вывести на экран результат.
Какой негатив про Вадима Дунаева. вывести на экран означает поместить куда-то, в какую-то ячейку. то есть примерно так HTML: <table><tr><td><script type="text/javascript"> ... document.write(x); </script></td></tr></table> или [js]document.getElementById("mytd").innerHtml = factorial(x)[/js] а саму функцию факториал перепиши сам, вместо этого ужоса.
Вот на php PHP: <?php function factorial($n){ $x= $n; for($i=1;$i<$x;$i++) { $n=$n*$i; $result = $n; #echo $n."<br>"; } return $result; } $result = factorial(15); echo $result; ?> на javascript ошибку исправил [js]<script type="text/javascript"> function factorial(n){ if(n<=1) return 1 rezult = 3 for(i=1;i<n;i++){ rezult = rezult * i } return rezult } var m = 10 x = factorial(m) document.write(x) </script>[/js]
vasa_c Я не волшебник я только учусь(с) Из книги-самоучителя armadillo 1.2! = 3 что странно. 2.В HTML документ 3.ошибся в названии return rezult было return result
Ничего странного, за такой "факториал" надо топить в младенчестве. Напиши его сам, задача несложная. Только не отталкивайся от "самоучителя" в ХТМЛ документ куда? хотя бы внутри тега боди?
function factorial(n){ x = n if(n == 0) return 1 for(o=1;o<x;o++){ n = n * o res = n } return res } var d = 15 z = factorial(d) document.write(z) гм функци в php и javascript ничем не отличаются? Вывожу в HTML файл. Может за одно самоучитель более правильный посоветуете. Учится то надо.
мдя. Вот тебе задача: сделать страничку, на которой есть кнопка, по клику на которую вызывается этот факториал и показывает результат с помощью функции alert; Дальше будет понятнее.
По поводу факториала Следовательно для JS функция будет выглядеть так: [js] function fac(n){ if (n == 1){ return n; }else{ return n * fac(n-1); } } [/js] Всего-лишь надо было убрать $ в названии переменных
[js]Number.prototype.fac = (function() {return (this > 0) ? (this * (this - 1).fac()) : 1;}); var x = 5; alert(x.fac());[/js]
Еще вопросик [js]<script type="text/javascript"> function wo() {return "Hellow word"} String.prototype.he() = wo mystr = " XXX " + "ZZZ".he() alert(mystr) document.write(mystr) </script>[/js] немогу продублировать функцию wo() функцией he() через String.prototype.he() = wo пример взят из книги. не выводит результат ни через alert() ни через document.write() document.write(wo()) работает если закоментить все остальные строки. КОд написан в 1st javascript editor проверен на ошибки - ошибок необнаружено.
Zeroglif Неработает ПОсоветуй что-нибудь, я незнаю с чего начать. Помогите. Из той же книжки. Написание функции заменяющей одно стороковое значение другим [js]<script type="text/javascript"> //s1 = all string, s2 = oldvalue, s3 = newvalue function replaceS(s1,s2,s3) { var S_all = "" while(true){ i=s1.indexOf(s2) if(i>=0) { S_all = S_all + s1.substr(0, i) + s3 //document.write(S_all) проверял значение s1 = s1.substr(i + s2.length) //s4 = s1 так получается бред //S_all = S_all + s4 } else break } return S_all //+ S_allx вторая часть для меня загадка но так было у автора - неработает } z = replaceS("one two free one two free one two free", "two", "2") document.write(z) </script>[/js] Вот вот результат почему-то теряется последняя free