我正在开发一个计算器应用程序,并且所有功能都已关闭。唯一的问题是,当我输入包含两个算术运算符的等式时,它会发生故障。例如,如果我输入“2 +√9”则返回3,如果输入“√9+ 2”,则强制关闭并显示“无效双√9”。请帮忙。
sum = indata[i]+indata[j];
if ((indata[i]+indata[j]) != sum) etc.
}
答案 0 :(得分:0)
使用堆栈数据结构来计算表达式。试试这个简单的类 您可以在正则表达式中添加sqrt操作
private static final String operators =" - + / *&#34 ;;
在evaluatePostfix方法中添加sqrt操作。
var temp = this;
Blaze.render(
Template.orderSettings,
temp.$('#reactiveUI').get(0)
有关详细信息,请阅读http://willcode4beer.com/design.jsp?set=evalInfix
http://www.java2novice.com/data-structures-in-java/stacks/infix-expression/