Мини-калькулятор через функцию
Всем доброго дня, работяги! Препод говорит, что нужно сделать калькулятор с функциями. Должно быть меню, по которому можно выбрать опцию. Это я сделал. Вот только говорит "Если меню равен 1, то вводит 2 числа и вызвать функцию". Еще говорит, все "if" не должны быть внутри функции, а наоборот. Может кто чем-то помочь? Я не справляюсь(
let menu = prompt("Калькулятор: 1) сложение, 2) вычитание, 3)умножение, 4) деление")
function calc1(a, b) {
if (menu == 1){
let s1 = prompt("a");
let s2 = prompt("b");
let sum = +s1 + +s2;
alert(sum);
}
}
function calc2(a, b) {
if (menu ==2){
let s1 = prompt("a");
let s2 = prompt("b");
let sub = s1 - s2;
alert(sub);
}
}
function calc3(a, b) {
if (menu == 3){
let s1 = prompt("a");
let s2 = prompt("b");
let multi = s1 * s2;
alert(multi);
}
}
function calc4(a, b) {
if (menu == 4){
let s1 = prompt("a");
let s2 = prompt("b");
let div = s1 / s2;
alert(div);
}
}
calc1()
calc2()
calc3()
calc4()
|
Может так?
function calc() {
const menu = prompt("Калькулятор: 1) сложение, 2) вычитание, 3)умножение, 4) деление");
const a = prompt("a");
const b = prompt("b");
const operation = [false, '+', '-', '*', '/'][menu] || false;
if (!operation)
return alert('Wrong operation');
return eval(a + ' ' + operation + ' ' + b + ';');
};
alert(calc());
|
Вариант без eval
function calc() {
const menu = prompt("Калькулятор: 1) сложение, 2) вычитание, 3)умножение, 4) деление");
const a = +prompt("a");
const b = +prompt("b");
const result = [false, a + b, a - b, a * b, a / b][menu];
return result === false || result === undefined ? 'Wrong operation' : result;
};
alert(calc());
|
простой калькулятор
:) :write:
function calc() {
const index = prompt("Калькулятор: 1) сложение, 2) вычитание, 3) умножение, 4) деление");
const a = prompt("a");
const b = prompt("b");
const result = {
1 : +a + +b,
2 : a - b,
3 : a * b,
4 : a / b
}[index];
return result == +result && result || "Wrong operation";
}
alert(calc());
|
мини калькулятор
<input type="text"><button>=</button>
<script>
var input = document.querySelector('input');
document.querySelector('button').onclick = e => input.value = eval(input.value);
</script>
|
| Часовой пояс GMT +3, время: 04:03. |