代码
#include <iostream>
#include<string>
#include<cstring>
#include<sstream>
#include<map>
using namespace std;
map<string, int> mp = { {"zero",0},{"one",1}, {"two",2}, {"three",3}, {"four",4}, {"five",5}, {"six",6}, {"seven",7}, {"eight",8}, {"nine",9}, };
int toNumber(string& str) {
stringstream ss(str);
string str_num;
int result = 0;
while (getline(ss, str_num,' '))
{
result = result * 10 + mp[str_num];
}
return result;
}
int main()
{
string str;
while (getline(cin,str))
{
stringstream ss(str);
string addNum_1, addNum_2;
getline(ss, addNum_1, '+');
getline(ss, addNum_2, '=');
addNum_1.erase(addNum_1.size() - 1);
addNum_2.erase(addNum_2.begin());
addNum_2.erase(addNum_2.size() - 1);
int num1, num2;
num1 = toNumber(addNum_1);
num2 = toNumber(addNum_2);
if (num1 == 0 && num2 == 0) {
break;
}
else {
cout << num1 + num2 << endl;
}
}
return 0;
}