простой калькулятор
Написал калькулятор, но появилась проблема, не могу описать функцию "=" , очень нужна помощь, буду очень благодарен. Вот код:
<HTML> <HEAD><TITLE></TITLE></HEAD> <script language="JavaScript"> function plus() { rezultat.value=znah_1.value-(-1)*znah_2.value; } function minus() { rezultat.value=znah_1.value-znah_2.value; } function umn() { rezultat.value=znah_1.value*znah_2.value; } function del() { rezultat.value=znah_1.value/znah_2.value; } function rav() { rezultat.value=znah_1.value-(-1)*znah_2.value; rezultat.value=znah_1.value-znah_2.value; rezultat.value=znah_1.value*znah_2.value; rezultat.value=znah_1.value/znah_2.value; } </script> <table border="2"> <tr> <td> <input id="znah_1" size="38"> </td> <td rowspan="3" valign="top"> <input type="button" value=" + " onclick="plus()"> <input type="button" value=" - " onclick="minus()"> <input type="button" value=" * " onclick="umn()"> <input type="button" value=" / " onclick="del()"> <input type="button" value=" = " onclick="rav()"></td> </tr> <tr> <td><input id="znah_2" size="38"></td> </tr> <tr> <td><input id="rezultat" size="38"></td> </tr> </table> </BODY> </HTML> |
извините код немного не тот
<HTML> <HEAD><TITLE></TITLE></HEAD> <script language="JavaScript"> function plus() { rezultat.value=znah_1.value-(-1)*znah_2.value; } function minus() { rezultat.value=znah_1.value-znah_2.value; } function umn() { rezultat.value=znah_1.value*znah_2.value; } function del() { rezultat.value=znah_1.value/znah_2.value; } function rav() { } </script> <table border="2"> <tr> <td> <input id="znah_1" size="38"> </td> <td rowspan="3" valign="top"> <input type="button" value=" + " onclick="plus()"> <input type="button" value=" - " onclick="minus()"> <input type="button" value=" * " onclick="umn()"> <input type="button" value=" / " onclick="del()"> <input type="button" value=" = " onclick="rav()"></td> </tr> <tr> <td><input id="znah_2" size="38"></td> </tr> <tr> <td><input id="rezultat" size="38"></td> </tr> </table> </BODY> </HTML> |
а зачем оно нужно ? если после любой операции по замыслу результат уже выводится?
а начать я думаю стоит с начала-с изучения основ ,с алгорититмов |
Цитата:
|
не работает
|
rezultat.value= можно убрать и результат не будет выводиться при нажатии кнопки, а в ф-ции rav() я думаю нужно просто объявить цикл который будет проверять какая клавиша было нажата последней и выводить результат, только вот как это реализовать незнаю
|
kekc91,
Вариант простого калькулятора ... <!DOCTYPE html> <html> <head> <title></title> </head> <body> <script type="text/javascript"> for (var a = " |1|2|3|\u21d0|4|5|6|+|7|8|9|-|0|*|/|=".split("|"), c, b, i = 0; i < a.length; i++) c = document.createElement("input"), c.type = i > 0 ? (c.onclick = function () {rezultat(this.value)},"button") : (c.setAttribute("readonly","readonly"),"text"), c.value = a[i], c.id = "n" + i, document.body.appendChild(c), i % 4 == 0 && document.body.appendChild(document.createElement("br")); c = 0; function rezultat(f) { var d = document.getElementById("n0"), e = d.value; /\d/.test(f) && (d.value += f); /\u21D0/.test(f) && (d.value = e.replace(/.$/, "")); e = +e; if (/[\*\+\-\/]/.test(f)) c = e, d.value = "", b = f; if (/=/.test(f)&&e) switch (b) { case "*": d.value = c * e; break; case "+": d.value = c + e; break; case "-": d.value = c - e; break; case "/": d.value = c / e } }; </script> </body> </html> |
Цитата:
|
Вы можете объяснить как ваша программа работает (для новичка):
что означает u21d0? да и вообще дать построчный комментарий, начиная с того, как вы через функцию определяете переменные, затем создаете некий элемент, а потом... ?? |
AtNovember,
alert("\u21D0"); типа комент формируется 17 инпутов в зависимости от значения нажатого инпута функция изменяет содержание нулевого инпута:-? |
Часовой пояс GMT +3, время: 16:11. |