gpt4 book ai didi

.net - 如何解析涉及括号的数学表达式

转载 作者:行者123 更新时间:2023-12-04 02:39:24 24 4
gpt4 key购买 nike

这不是学校作业或其他任何东西,但我意识到这主要是一个学术问题。但是,我一直在努力做的是解析“数学”文本并提出答案。

例如 - 我可以弄清楚如何解析 '5 + 5' 或 '3 * 5' - 但是当我尝试正确地将操作链接在一起时我失败了。

(5 + 5) * 3

这主要是困扰我,我无法弄清楚。如果有人能指出我的方向,我将不胜感激。

编辑
感谢所有快速回复。很抱歉我没有更好地解释。

首先 - 我没有使用正则表达式。我也知道已经有可用的库,可以将数学表达式作为字符串,并返回正确的值。所以,我主要是在看这个,因为遗憾的是,我没有“明白”。

第二 - 我尝试做的(可能被误导)但我正在计算“(”和“)”并首先评估最深的项目。在简单的例子中,这是有效的;但我的代码不漂亮,更复杂的东西会崩溃。当我“计算”最低级别时,我正在修改字符串。

所以...
(5 + 5) * 3

会变成
10*3

然后将评估为
30

但它只是觉得'错误'。

我希望这有助于澄清事情。我一定会检查提供的链接。

最佳答案

很久以前,在开发一个简单的绘图应用程序时,我使用了 this algorithm (这相当容易理解并且非常适合像这样的简单数学表达式)首先将表达式转换为 RPN然后计算结果。对于不同的变量值,RPN 很好,而且执行速度很快。

当然,语言解析是一个非常广泛的话题,还有很多其他方法可以解决它(以及针对它的预制工具)

关于.net - 如何解析涉及括号的数学表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2969561/

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