01/10/2018, 10:09

Nhập biểu thức vào trong C++

E chào mọi người . cho e hỏi e muốn viết 1 chương trình mà khi nhập biểu thức trong cùng 1 lần nhập ví dụ
a+b hay ab ( a và b ở đây đều là số cụ thể )
thì lúc in ra cho kết quả chính xác ạ
Biểu thức nhập : 4
2
Kết quả : 8
Cảm ơn anh chị

viết 12:12 ngày 01/10/2018

đọc 1 dòng vào rồi tách dòng đó thành 3 phần: phép tính (+,-,*,/), vế trái tất cả những chữ cái bên trái phép tính, vế phải (tất cả những chữ bên phải phép tính), rồi tính kết quả thôi.

std::string line;
char op;
double lhs;
double rhs;

//đọc dòng nhập vào

//tìm vị trí của phép tính `op` trong `line`, ví dụ là tại `i`
int i;
//...
//lấy phép tính
op = line[i];

//tách số bên vế trái
lhs = std::stod(line.substr(0, i));

//tách số bên vế phải
rhs = std::stod(line.substr(i+1));

//thực hiện phép tính
double result = 0;
switch (op)
{
case '+':
    //...
    break;
case '-':
    //...
    break;
//...
default:
    break;
}
Bài liên quan
0