C++ 如何转换输入';三四+;五六=';至';34+;56';?

C++ 如何转换输入';三四+;五六=';至';34+;56';?,c++,c,clion,C++,C,Clion,我想把两个数字加在一起,每个数字都在其位置上进行了描述 例如,三四=34,零七=07,等等 需要处理的最大加数是99(9) 我怎样才能让计算机知道“三四等于34”并通过加号识别每个加数?一般来说,为了得到如何解析它的答案,您必须更好地定义输入,但这里有一些伪代码可以帮助您开始 数字\u句是一个类似于的字符串“三四一八” 你必须写一个完整的C++程序来完成这个任务。在C++库中没有任何东西可以在按钮的简单推送下为您这样做。你必须自己做所有的工作。你可以使用std::map标准::地图数字;数字[“

我想把两个数字加在一起,每个数字都在其位置上进行了描述

例如,三四=34,零七=07,等等

需要处理的最大加数是99(9)


我怎样才能让计算机知道“三四等于34”并通过加号识别每个加数?

一般来说,为了得到如何解析它的答案,您必须更好地定义输入,但这里有一些伪代码可以帮助您开始

数字\u句
是一个类似于
的字符串“三四一八”


你必须写一个完整的C++程序来完成这个任务。在C++库中没有任何东西可以在按钮的简单推送下为您这样做。你必须自己做所有的工作。你可以使用std::map<代码>标准::地图数字;数字[“一”]=1。您可以使用
number=digit[firstDigit]*10+digit[secondDigit]获得每个数字hashmap = {
    'one' : 1,
    'two' : 2,
    ...
}

def get_num(number_sentence):
    result = 0
    for digit_word in number_sentence:
        result = result * 10 + hashmap[digit_word]
    return result