gpt4 book ai didi

C++ 使用字符串识别两位数字

转载 作者:行者123 更新时间:2023-11-28 01:07:23 25 4
gpt4 key购买 nike

抱歉,我意识到我在这个问题中输入了所有代码。对于其他学生来说,我所有的代码都等于这个特定问题的大部分答案,这是愚蠢的。

这是我提出的问题的基本要点:

我需要识别正则数学表达式(例如 5 + 6)和两位数(例如 56 + 78)中的个位数。数学表达式也可以显示为 56+78(无空格)或 56 +78 等。

实际的问题是,无论输入是什么,我读入的表达式都是 5 6 + 7 8。

感谢并抱歉,我几乎删除了这个问题,但我的目标不是给出作业问题的答案。

杰西·斯莫莫蒙

最佳答案

该问题实际上由两部分组成:对输入进行词法分析(将字符序列转换为“标记”序列)和计算表达式。如果您分别执行这两项任务,应该会容易得多。

首先,读入输入并将其转换为一系列标记,其中每个标记是一个运算符(+- 等)或一个操作数( 42 等)。

然后,对这个标记序列执行中缀到后缀的转换。 “ token ”类型不必很花哨,它可以很简单:

struct Token {
enum Type { Operand, Operator };
enum OperatorType { Plus, Minus };

Type type_;
OperatorType operatorType_; // only valid if type_ == Operator
int operand_; // only valid if type_ == Operand
};

关于C++ 使用字符串识别两位数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5446827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com