b^2-4*a*c的后缀表达式
时间: 2023-08-23 22:06:53 浏览: 74
假设中缀表达式为 "b^2-4*a*c",则其对应的后缀表达式为:
"b 2 ^ 4 a * c * -"
解释一下这个后缀表达式:
1. 将中缀表达式的操作数和操作符依次读取出来,并按照操作符优先级和结合性调整顺序。
2. 将操作数和操作符依次入栈。
3. 当遇到操作符时,弹出栈顶的两个操作数,按照操作符进行计算,并将计算结果入栈。
4. 最终栈中只剩下一个元素,即为后缀表达式的计算结果。
根据上述步骤,可以得到上述后缀表达式。
相关问题
59、表达式A*(B-C*(C/D))的后缀式为()。 A. ABC-CD/** B. ABCCD/*-* C. ABC-*CD/* D. 以上都不对
B. ABCCD/*-*. 表达式的后缀式表示为:ABC*CD/-*. 过程如下:
| 栈 | 后缀式 | 读入的符号 |
| :----: | :----: | :--------: |
| | | A |
| A | | * |
| A* | | ( |
| A* | B | - |
|A*CB- | | C |
|A*CB- | | * |
|A*CB-* | | ( |
| A*CB-* | C | C |
|A*CB-*C | | / |
|A*CB-CD/| | ) |
|ABCCD/*-| | |
a-b*c/(3+6)#后缀式
首先按照运算优先级将中缀表达式转换为后缀表达式:
a - b * c / (3 + 6) => a b c * 3 6 + / -
然后依次按照后缀表达式进行计算:
1. 将 a 压入栈中
2. 将 b 压入栈中
3. 将 c 压入栈中
4. 弹出栈顶的两个元素 c 和 b,计算 c * b 的值得到 18,并将结果压入栈中
5. 将数字 3 压入栈中
6. 将数字 6 压入栈中
7. 弹出栈顶的两个元素 6 和 3,计算 6 + 3 的值得到 9,并将结果压入栈中
8. 弹出栈顶的两个元素 18 和 9,计算 18 / 9 的值得到 2,并将结果压入栈中
9. 弹出栈顶的两个元素 a 和 2,计算 a - 2 的值得到最终的结果。
因此,后缀表达式 a-b*c/(3+6)# 的计算结果为 a - 2。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)