アプリ版:「スタンプのみでお礼する」機能のリリースについて

応用情報技術者試験の過去問です

この問題の答えが(ウ)な理由が分からないのですが
たとえば1234+
と入力されたら、スタックは後から入れたものを先に取り出すので
+→4→3と取り出して中置表記法で4+3になって、正解は(エ)になると思うのですが、どこを勘違いしているでしょうか。教えていただきたいです

「スタックを用いた演算処理について」の質問画像

A 回答 (2件)

(1+2)を逆ポーランド記法で記述すると12+。


つまり、逆ポーランド記法では後で使われる演算子ほど、右に位置することになる。
まあ、これはどうでも良い事なんですが・・。

ここから真面目な話。

+が押されたら、スタックから2が取り出されてアキュムレータに入れ、次に取り出した1をアキュムレータに加算ななんでしょう?

だ・か・ら・・・
スタックは逆に取り出すんだから演算としては1+2の事なんですよ。
    • good
    • 0

逆ポーランド表記法では出現する数字(文字)の順番は元の式と同じになります。


よってイとエは解答から除外できます。

あなたの理解で
4 2 ÷
を計算するとどうなりますか?
Dに2がCに4が入っている状態です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!