C/C++

Разработать программу (калькулятор) на языке С++,

которая должна выполнять основные арифметические операции: умножение, деление, сложение, вычитание. Сначала пользователь должен выбрать операцию, потом ввести два числа, над которыми будет выполняться эта операция. Результат выполнения арифметической операции вывести на экран. Выполнить отладку и компиляцию программы, получить исполняемый файл. Выполнить тестирование программы несколькими наборами входных данных.
#include <iostream>
#include <limits>
#include <string>
using namespace std;
void trim(string& line) {
while (line.back() == '0') line.pop_back();
if (line.back() == '.') line.pop_back();
}
int main() {
char op;
double a, b;
string res;
while (true) {
cout << ">>> ";
op = cin.get();
cin >> a >> b;
cin.ignore(numeric_limits<streamsize>::max(), '\n');
switch (op) {
case '+': res = to_string(a + b); break;
case '-': res = to_string(a - b); break;
case '*': res = to_string(a * b); break;
case '/': {
if (b != 0) res = to_string(a / b);
else res = "Error! Division by zero";
break;
}
default: res = "Error! Unknown operation";
}
trim(res);
cout << "<<< " << res << '\n';
}
}
Евгений Чиканов
Евгений Чиканов
81 721
Лучший ответ
#include

int main(){
setlocale(LC_ALL,"RUSSIAN");
int a = 0;
int b = 0;
char operation;

std::cout << "операция: ";
std::cin >> operation;
std::cout << "первое число:";
std::cin >> a;
std::cout << "второе число:";
std::cin >> b;

switch (operation){
case '-':
std::cout << "a - b = " << a - b <<'\n';
break;
case '+':
std::cout << "a + b = " << a + b << '\n';
break;
case '*':
std::cout << "a * b = " << a * b << '\n';
break;
case '/':
std::cout << "a / b = " << a / b << '\n';
break;
default:
std::cout << "Error\n";
}
return 0;
ЕП
Евгений Пак
13 102