простой калькулятор
Написал калькулятор, но появилась проблема, не могу описать функцию "=" , очень нужна помощь, буду очень благодарен. Вот код:
<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, время: 00:50. |