例如,我试图理解RPN计算器在一个参数和一个操作数的情况下应该如何工作。除法或乘法。
我知道它在简单的情况下应该如何工作,例如
> 1
1
> 3
3
> +
result: 4
explanation: 1 + 3 = 4
的工作原理很明显
情况2更难,但也很清楚
7 2 3 * −
result: 1
explanation: 7 - (2 * 3) = 1
所以我基本上知道它是如何工作的。
我对这些用例很感兴趣。
4 -
result: -4
因此,在单个参数的情况下,它应该将一个数字转换为负数。在"+"的情况下,我们不会做任何
但在这种情况下,它应该如何表现呢?
4 /
或
4 *
我应该直接用相同的数字做一个数学运算吗?例如:
4 / === 4 / 4
4 * === 4 * 4
谢谢你的帮助!
附言:很抱歉问了这个愚蠢的问题,但这是我第一次面对
更新:此外,当用户输入不正确的数据时,用例如何。像这样的东西?
1 + 3 - 5 * 3 /
默认情况下,它会结束该过程,还是不允许用户继续输入不正确的数据,直到输入正确有效的参数?
使用RPN,寄存器/堆栈中通常有一些值。
此外,您还可以获得用于更改符号的CHS
密钥。
如果你想制作一个自己的计算器,你可以指定你想要的函数,因为你喜欢用-
作为运算符和更改符号
如果堆栈中只有一个值,则可以省略二进制运算符,只允许使用一元运算符。