标签: java pseudocode
我在java中实现了一个控制台计算器,它获取一个表达式,然后将其转换为postfix,然后计算并打印结果。
但是当我输入包含彼此相邻的两个幂(2 ^ 3 ^ 5等)的表达式时,我遇到了问题。它转换为23^5^作为后缀表达式,但应转换为35^2^,因为它必须从右边开始。
23^5^
35^2^
有什么想法吗?
答案 0 :(得分:2)
指数运算符具有从右到左的关联性。需要首先深入评估。这个example详细解释了如何处理它。
答案 1 :(得分:1)
它实际应该转换为235 ^^。