Skip to content

Latest commit

 

History

History
75 lines (62 loc) · 1.73 KB

2696.md

File metadata and controls

75 lines (62 loc) · 1.73 KB

表达式 2696: 计算表达式的值

题目要求计算给定表达式的值,其中运算符是采用字符串表示的。

题目来源

2696: 计算表达式的值

总时间限制: 1000ms 内存限制: 65536kB

描述

有些语言中表达式的运算符使用字符串表示,例如用mul代表*,用div代表/,用add代表+,用sub代表-,用mod代表%。

输入

第一行为表达式的个数n。其余n行每行一个表达式,表达式由两个整数及其中间的运算符字符串表示。

输出

输出为n行,每行是对应表达式的值。注意,此处要求的所有运算均为整数运算。

样例输入

5
345 mul 122
3945 div 12
321 add 343
340 sub 211
377 mod 27

样例输出

42090
328
664
129
26

每次分别读取一个操作数,一个字符串,一个操作数即可,判断字符串然后输出结果。

#include <iostream>
#include <string>
using namespace std;
int main() {
	int n, i, num1, num2, result;
	string op;
	cin >> n;
	for (i = 0; i < n; ++i) {
		cin >> num1 >> op >> num2;
		if (op == "mul") {
			result = num1 * num2;
		}
		else if (op == "div") {
			result = num1 / num2;
		}
		else if (op == "add") {
			result = num1 + num2;
		}
		else if (op == "sub") {
			result = num1 - num2;
		}
		else if (op == "mod") {
			result = num1 % num2;
		}
		cout << result << endl;
	}
	return 0;
}

2696.cpp 代码长度:499B 内存:128kB 时间:1ms 通过率:98% 最小内存:128kB 最短时间:0ms

对于多个字符串的判别可以采用if else来进行分别判断。

有任何的改进意见欢迎大家在微信平台公众号主页面留言或者发表issue。