问题标签 [rpn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - java rpn计算器
我想在我的一个项目中包含一个简单的 RPN 类型计算器功能。
基本上我需要一种可以转换的方法,例如:
"30 / ((1 + 4) * 3)" 变成 "2"
有谁知道可以做到这一点的任何预先编写的库?
谢谢。
lisp - 需要帮助将径向距离转换为 lisp 程序的反向抛光概念
极坐标的距离公式如下所示:http: //math.ucsd.edu/~wgarner/math4c/derivations/distance/distancepolar.htm
我试过这样做:
但是减法和乘法之间的额外括号改变了公式,但是我不太确定如何正确地做到这一点,任何帮助将不胜感激。
postfix-notation - 应用语言可以使用后缀表示法吗?
我一直发现像 Factor 这样的后缀语言比前缀(Lispy 语言)和中缀/后缀语言(所有 C 风格的语言,如果我们同时包含运算符和函数)更具可读性。
与前缀语言不同,您不需要处处使用分隔符。与中缀表示法不同,没有复杂的优先顺序要记住。有什么不喜欢的?
这些语言似乎都是串联的,因此几乎总是基于堆栈的。
是否可以实现一种现代语言,它适用于连接,并且仍然基于后缀?
c# - 波兰符号规则添加“in”和带有逻辑的运算符
我有那个表情
现在这是 rpn 规则
我添加了 &&, ||, ~, in,
现在,它应该如何改变 RPN 的规则?
***更新
那是我的运算符表
java - RPN 问题(操作顺序)
我正在尝试制作一个具有操作顺序的简单计算器。我在互联网上阅读并找到了RPN(反向波兰表示法)的算法。
编辑:
举个例子:2 * 5 - 3 + 4
好的,我照你们说的做了,现在检查一下:
Proc 是数字和操作的字符串数组。Proc 将是 {2, *, 5, -, 3, +, 4}
这是代码:
仍然不起作用
我怎样才能使它也能正常工作?请帮帮我!
c# - 反向波兰符号 C# 不能正常工作
我写了一个带有结构图的rpn。
最新问题:它现在不能正常工作。
如果输入字符串是“5 + ((1 + 2) * 4) - 3”
我的输出是:5 1 2 + 4 * 3 - +
我必须得到这个结果: 5 1 2 + 4 * + 3 -
编辑了源
*那是原来的问题,但对我有帮助,现在修复了原来的错误: * ,
在循环或 int i = 12 的调试中,c 值为 0\0 或其他 值,并且该值作为 '(' 括号添加到输出(名称:公式)字符串。我不知道为什么。 最后一个'-'操作符号,不要添加到(或不看)输出字符串(公式)的末尾我错误地由 '(' 引起了这个问题。 我尝试了其他字符串输入值的程序,但是总是在我的字符串中添加一个“(”,我不知道为什么......我看到它与括号的数量无关。总是只有一个“(”添加到我的字符串...... *)是的,在英语 LengyelFormula = rpn(它是匈牙利语)*
c - C中的逆波兰计算器:isdigit()问题
我正在用 C 做家庭作业。我必须构建一个计算器来接收 RPN,将其转换为双精度数,从堆栈中添加/删除它并打印堆栈上剩余的内容。在我运行它之前,一切似乎都很顺利。输入我的输入后,char[] 成功转换为 double(或者我认为是这样),并且在此过程中的某个地方(可能在 getop() 中)程序是否认为我没有输入数字。这是代码和输出。
输出 :
请输入波兰表示法或 ^d 退出。123 堆栈位置的值为 1
既不是数字也不是小数。
123.00 请输入波兰表示法或 ^d 退出。
任何关于正在发生的事情的想法都会非常有帮助。似乎数字被正确传递,从char正确格式化为double,然后出现问题。
谢谢你。
岩石
c++ - 二元运算示例程序
问题陈述:编写一个 C++ 程序来计算后缀表达式。您的程序应该将后缀表达式作为输入,在堆栈的帮助下对其进行处理,并在执行所需的计算后显示结果。
此程序只允许使用以下二元运算符:+、-、*、/、^ [加、减、乘、除、幂]
如果在处理后缀表达式时发生错误,您的程序应该显示一条有意义的消息,例如: 错误:不允许除以零 错误:__ 运算符需要两个操作数 错误:后缀表达式无效
帮帮我,我的程序正在生成错误这是我的尝试:
calculator - 斯坦福 CS193p 作业 2 - 将变量输入 RPN 计算器
我目前正在自学 iPhone 编程并致力于解决今年斯坦福 CS193p 课程的作业 2 [PDF] 。
关于必修任务 1,我有一些不明白的地方。应该为 RPN 计算器添加变量支持,以便对其进行编程。但是,某人使用此功能的假定方式是什么?那是:
- 应该设置变量的计算器按钮的顺序是什么?
- 用户应该如何运行具有预定义变量值的预定义计算器程序?
请注意,第 5 页的屏幕截图中没有“存储”或“运行”按钮。
c - 如何使用while循环扫描数字和运算符系列?
我有一个标准输入,如“ 33 44 55 + 66 * + = ”,(即逆波兰表示法,RPN),我使用如下代码来解析它。但是 scanf("%d") 读取 '+' 并丢弃它,如何对运算符进行 ungetc 并使其被 scanf(" %c ") 读取?解决问题的最佳方法是什么。谢谢。