我必须用 PHP 创建一个简单的公式解释器。它必须支持 4 个运算符:exp、ln、加法、减法和括号。
我应该从哪里开始?听说用户输入的公式要转化成树,是这样吗?也许解释器已经存在?
最佳答案
是的,正确的是用户输入的公式必须转换成abstract syntax tree .
数学公式通常使用 infix 编写符号。您需要将其转换为 postfix
或 prefix
表示法。 postfix
表示法也称为 reverse polish notation .
您可以使用 shunting yard algorithm来完成这个。 See a detailed example .
这stackoverflow question指向 PHP 实现的链接。
关于php - 如何创建数学公式解释器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6978481/