Цитата:
|
Skipp спасибо тебе большое добрый человек, так даже намного проще чем я пытался, буду пробовать дальше.
|
to ksa на них воду возят, а я не хочу:) Спасибо за твой вариант, мы кое чего не проходили из этого, но тоже попробую!
|
Кнопке равно присвоил функцию:
function ravno() { x=f1.txt.value; f1.txt.value=eval(x); }; Но теперь не получается написать функцию к кнопке проценты. eval определяет знак % как деление по модулю. Вот: <html> <head> <title>Java</title> </head> <body> <table border='2'> <tr> <td> <form name="f1"> <input type="text" name="txt"> <input type="button" onclick="f1.txt.value += 1" value="1"> <input type="button" onclick="f1.txt.value += 2" value="2"> <input type="button" onclick="f1.txt.value += this.value" value="-"> <input type="button" onclick="percent()" value="%"> <input type="button" onclick="ravno()" value="="> <input type="button" onclick="reset()" value="C"> </td> </tr> </form> <script> function ravno() { x=f1.txt.value; f1.txt.value=eval(x); }; function reset() { if(x.length>0)f1.txt.value=0; }; /*function percent() { ????? };*/ </script> </body> </html> |
И походу с нахождением обратного числа тоже не все так просто будет :(
|
Ух)
Как же всё сложно) <form name="f1"> <input type="text" name="txt" readonly /><br/> <input type="button" onclick="f1.txt.value += this.value" value="1" /> <input type="button" onclick="f1.txt.value += this.value" value="2" /> <input type="button" onclick="f1.txt.value += this.value" value="3" /><br/> <input type="button" onclick="f1.txt.value += this.value" value="4" /> <input type="button" onclick="f1.txt.value += this.value" value="5" /> <input type="button" onclick="f1.txt.value += this.value" value="6" /></br> <input type="button" onclick="f1.txt.value += this.value" value="7" /> <input type="button" onclick="f1.txt.value += this.value" value="8" /> <input type="button" onclick="f1.txt.value += this.value" value="9" /><br/> <input type="button" onclick="f1.txt.value += this.value" value="0" /> <input type="button" onclick="f1.txt.value += this.value" value="+" /> <input type="button" onclick="f1.txt.value += this.value" value="-" /><br/> <input type="button" onclick="f1.txt.value += this.value" value="*" /> <input type="button" onclick="f1.txt.value += this.value" value="/" /> <input type="button" onclick="f1.txt.value = eval(f1.txt.value)" value="=" /> </form> |
Это все получилось, не получается кнопку проценты(%) сделать и кнопку нахождение обратного числа (1/x). Т.е. если добавлю в кнопку %
<input type="button" onclick="f1.txt.value += this.value" value="%" /> то получается деление по модулю, а не проценты |
Хм.. Неплохо бы узнать, что вы проходили, а что нет.
Я немного допилил код Skipp, правда не сделал кнопку процентов, но, мне кажется, подумав над тем, что тут написано, вполне можно сделать её и самому. <form name="f1"> <input type="text" name="txt" readonly /><br/> <input type="button" onclick="f1.txt.value += this.value" value="1" /> <input type="button" onclick="f1.txt.value += this.value" value="2" /> <input type="button" onclick="f1.txt.value += this.value" value="3" /><br /> <input type="button" onclick="f1.txt.value += this.value" value="4" /> <input type="button" onclick="f1.txt.value += this.value" value="5" /> <input type="button" onclick="f1.txt.value += this.value" value="6" /><br /> <input type="button" onclick="f1.txt.value += this.value" value="7" /> <input type="button" onclick="f1.txt.value += this.value" value="8" /> <input type="button" onclick="f1.txt.value += this.value" value="9" /><br /> <input type="button" onclick="f1.txt.value += this.value" value="0" /> <input type="button" onclick="f1.txt.value += this.value" value="+" /> <input type="button" onclick="f1.txt.value += this.value" value="-" /><br /> <input type="button" onclick="f1.txt.value += this.value" value="*" /> <input type="button" onclick="f1.txt.value += this.value" value="/" /> <input type="button" onclick="f1.txt.value = this.value+'(' + f1.txt.value +')'" value="1/" /><br /> <input type="reset" value="C" /> <input type="button" onclick="f1.txt.value = eval(f1.txt.value)" value="=" /> </form> |
trikadin спасибо! проходили функции, массивы, операторы но очень бегло поэтому туплю(по javascript в общих чертах будет всего несколько уроков). Я примерно тоже самое сделал (выше есть мой сокращенный код) но расчет и очистку строки делал с помощью функции, а вот на процентах и расчете обратного числа застрял, спасибо за него. Конечно хотелось бы разобраться, а не тупо скопировать.
|
Практически все получилось, осталось только расчет процентов добавить. Воспользовавшись примером от trikadin сделал нахождение обратного числа с помощью функции, поправьте если что-то сделал не правильно, а если правильно тоже скажите:
В форме создаю кнопку: <form name="f1"> <input type="text" name="txt"> <input type="button" onclick="obratn()" value="1/x"> </form> В скрипте функцию: function obratn() { z =eval(1/f1.txt.value); f1.txt.value=z; } C процентами пока не знаю что делать, в остальном калькулятор почти готов (осталось оформить и еще один знак добавить). |
Часовой пояс GMT +3, время: 12:54. |