【问题描述】
为了便于处理表达式,常常将普通表达式(称为中缀表示)转换为前缀(运算符在前,如X/Y写为/XY)和后缀(运算符在后,如X/Y写为XY/)的表达形式。
在这样的表示中可以不用括号即可确定求值的顺序,如:
(P+Q)*(R-S)→*+PQ-RS或 → PQ + RS -*
试将下面的表达式改写成前缀与后缀的表示形式:
试将下面的前缀表示还原成中缀的表示形式,同时写出后缀表示:
+△A *B△C (前缀式中△表示一元运算符取负号,如△A表示(-A))
注:改编自第三届全国青少年信息学(计算机)奥林匹克分区联赛1-9
【答案】
前缀形式为:+A/*BCD;后缀形式为:ABC*D/+
前缀形式为:+-A*CD^BE;后缀形式为:ACD*-BE^+
中缀形式为(-A)+B*(-C);后缀形式为:A△BC△*+
小智编程由硅谷人工智能专家伯克利大学熊宇红博士和清华大学靳简明博士后创立。为5~18岁青少年量身定制线下小班素质课程,通过学习Scratch、Python、C++、信息学奥赛,培养解决复杂问题的能力、提高逻辑思维能力和计算能力,实现与未来的对话。
寒假营信息: