Как поместить в переменную арифметическую операцию?

  1. Как мне проверить ввел ли пользователь +, -, /, * ?
  2. И как мне потом посчитать результат с знаком который ввел пользователь?

let firstNum = prompt('Первое число?',);

while (firstNum === null || firstNum === '' || firstNum.replace (/\d/g, '').length){
firstNum = prompt('введите первое число');
}

let secondNum = prompt('Какое второе число?');

while (secondNum === null || secondNum === '' || secondNum.replace (/\d/g, '').length){
secondNum = prompt('Введите пожалуйста второе число');
}

let arithmeticOperation = prompt('Какой знак вы выберите?')

while (arithmeticOperation === null || arithmeticOperation === '' || arithmeticOperation.replace ('как мне проверить что тут будут знаки +, -, /, *', '').length){
arithmeticOperation = prompt('Введите пожалуйста +, -, /, *');
}

const firstNumB = Number(firstNum);
const secondNumB = Number(secondNum);

const result = firstNum + arithmeticOperation +secondNum;

alert(`${firstNumB} ${arithmeticOperation} ${secondNumB} = ${result}`);

Ответы (1 шт):

Автор решения: ArturHarutyunyan

Чтобы получить Numberиз prompt нужно использовать функцию parseInt() или просто +prompt. А чтобы проверить какой знак ввел пользователь нужно использовать if или switch / case

let firstNum = +prompt('Первое число?');
let secondNum = +prompt('Какое второе число?');

let arithmeticOperation = prompt('Какой знак вы выберите?')

let result

switch (arithmeticOperation) {
    case "+":
        result = firstNum + secondNum
        break;
    case "-":
        result = firstNum - secondNum
        break;
    case "*":
        result = firstNum * secondNum
        break;
    case "/":
        result = firstNum / secondNum
        break;
}

alert(result)

let firstNum = +prompt('Первое число?');
let secondNum = +prompt('Какое второе число?');

let arithmeticOperation = prompt('Какой знак вы выберите?')

let result

if(arithmeticOperation == '+'){
    result = firstNum + secondNum
}else if(arithmeticOperation == '-'){
    result = firstNum - secondNum
}else if(arithmeticOperation == '*'){
    result = firstNum * secondNum
}else if(arithmeticOperation == '/'){
    result = firstNum / secondNum
}


alert(result)

→ Ссылка