Требуется написать программу выводящую 2 рандомных числа и рандомный знак(+, -, =, *). Должно быть всего 5 кнопок. 4 кнопки соответствующие знакам и кнопка равно. При загрузке страницы пользователь видит 2 числа и арифметический знак, нажимает кнопку, соответствующую знаку, затем нажимает равно и происходят вычисления. Если нажата кнопка с несоответствующим знаком, выдается сообщение об ошибке. Часть кода есть. Не могу дописать, чтобы при нажатии на равно проверялось, какая кнопка из знаковых была нажата, и переменная (res) результат был передан в форму ответ.
Внешний вид калькулятора приложен.
Ниже код:
Ниже код HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Kalkulator</title>
<link rel="stylesheet" href="css/kalk.css">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<SCRIPT type="text/javascript" src="js/kalk.js"></SCRIPT>
</head>
<body>
<FORM>
<DIV class="formula">
<INPUT type="text" name="first"/>
<INPUT type="text" name="znak"/>
<INPUT type="text" name="second"/>
</DIV>
<DIV class="deistv">
<INPUT type="button" name="plus" value="+" onClick="GetResult(1)"/>
<INPUT type="button" name="minus" value="-" onClick="GetResult(2)"
/>
<INPUT type="button" name="umnog" value="X" onClick="GetResult(3)"
o/>
<INPUT type="button" name="razder" value="/" onClick="GetResult(4)"
/>
</DIV>
<DIV class="ravno">
<INPUT type="button" name="ravno" value="=" />
</DIV>
<DIV class="result">
<INPUT type="text" name="result" placeholder="Ответ" />
</DIV>
</FORM>
</body>
</html>
Скрипт
$(document).ready(function() { // Ждём загрузки страницы
var nombfirst = Math.random();
var nombsecond = Math.random();
var arr = ["+", "-", "X", "/"];
var first = $("input[name=first]").val() * 1; // Переменная первого числа
var second = $("input[name=second]").val() * 1; // Переменная второго числа
var randznak = arr[Math.round(Math.random()*3)]
$("input[name=first]").val(nombfirst); // записываем результат переменной nombfirst
$("input[name=second]").val(nombsecond); // записываем результат переменной nombecond
$("input[name=znak]").val(randznak); // записываем результат переменной nombecond
$("input[name=plus]").click( function () { // Событие нажатия на кнопку "плюс"
var first = $("input[name=first]").val() * 1; // Переменная первого числа
var second = $("input[name=second]").val() * 1; // Переменная второго числа
var res; // Переменная результата
if (randznak == '+') { // Если знак - плюс
res = first + second;
}
else {
res = String(res);
res = 'Неверный знак!';
$("input[name=result]").val(res);
}
});
$("input[name=minus]").click( function () { // Событие нажатия на кнопку "минус"
var first = $("input[name=first]").val() * 1; // Переменная первого числа
var second = $("input[name=second]").val() * 1; // Переменная второго числа
var res; // Переменная результата
if (randznak == '-') { // Если знак - минус
res = first - second;
}
else {
res = String(res);
res = 'Неверный знак!';
$("input[name=result]").val(res);
}
});
$("input[name=umnog]").click( function () { // Событие нажатия на кнопку "умножить"
var first = $("input[name=first]").val() * 1; // Переменная первого числа
var second = $("input[name=second]").val() * 1; // Переменная второго числа
var res; // Переменная результата
if (randznak == 'X') { // Если знак - умножить
res = first * second;
}
else {
res = String(res);
res = 'Неверный знак!';
$("input[name=result]").val(res);
}
});
$("input[name=razder]").click( function () { // Событие нажатия на кнопку "разделить"
var first = $("input[name=first]").val() * 1; // Переменная первого числа
var second = $("input[name=second]").val() * 1; // Переменная второго числа
var res; // Переменная результата
if (randznak == '/') { // Если знак - разделить
res = first / second;
}
else {
res = String(res);
res = 'Неверный знак!';
$("input[name=result]").val(res);
}
});
//.......................
// Дю сюда все работает
// --------------------
$("input[name=ravno]").click( function () {
switch (oper) //Проверяем, какая кнопка
{ //была нажата
case 1: //Кнопка +
{
res = first+second;
$("input[name=result]").val(res);
break;
}
case 2: //Кнопка -
{
res = first-second;
$("input[name=result]").val(res);
break;
}
case 3: //Кнопка *
{
res = first*second;
$("input[name=result]").val(res);
break;
}
case 4: //Кнопка /
{
res = first/second;
$("input[name=result]").val(res);
break;
}
}
});
});