算术表达式a+b*(c+d/e )转为后缀表达式是?具体分析下!谢谢!!

2020-09-14 科技 72阅读

转为后缀表达式是“abcde/+*+ ”。

a+b*(c+d/e)   (a+(b*(c+(d/e))))

通过根据运算符的优先级将所有算术单元括起来,该表达式变为:(a+(b*(c+(d/e)))),然后转换后缀表达式。

后缀:将操作符号移到相应的括号之后,然后变为:(a(b(c(de)/)+)*)+

除去括号后的表达式是后缀表达式:abcde/+*+

扩展资料:

后缀表达式进行计算的通用做法:

可以先建立一个栈S 。从左到右读表达式,如果读到操作数就将它压入栈S中,如果读到n元运算符(即需要参数个数为n的运算符)则取出由栈顶向下的n项按操作符运算,再将运算的结果代替原栈顶的n项,压入栈S中 。如果后缀表达式未读完,则重复上面过程,最后输出栈顶的数值则为结束。

后缀表达式:也叫逆波兰表示法(Reverse Polish notation,RPN,或逆波兰记法),是一种是由波兰数学家扬·武卡谢维奇1920年引入的数学表达式方式,在逆波兰记法中,所有操作符置于操作数的后面,因此也被称为后缀表示法。逆波兰记法不需要括号来标识操作符的优先级。

参考资料来源:

百度百科-后缀表达式

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com