1

我在 java 中实现了一个控制台计算器,它获取一个表达式,然后将其转换为后缀,然后计算并打印结果。

但是当我输入包含彼此相邻的两个幂(2^3^5 等)的表达式时,我遇到了问题。它转换23^5^为后缀表达式,但应该转换35^2^,因为对于权力,它必须从右开始。

有任何想法吗?

4

2 回答 2

2

指数运算符具有从右到左的结合性。它需要首先进行深入评估。这个例子详细解释了如何处理它。

于 2012-09-15T18:24:26.427 回答
1

它实际上应该转换为 235^^。

于 2012-09-15T18:21:07.287 回答