技術士の過去問
令和3年度(2021年)
基礎科目「情報・論理に関するもの」 問11

このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。

問題

技術士 第一次試験 令和3年度(2021年) 基礎科目「情報・論理に関するもの」 問11 (訂正依頼・報告はこちら)

演算式において、+、−、×、÷などの演算子を、演算の対象であるAやBなどの演算数の間に書く「A+B」のような記法を中置記法と呼ぶ。また、「AB+」のように演算数の後に演算子を書く記法を逆ポーランド表記法と呼ぶ。中置記法で書かれる式「(A+B)✕(C-D)」を下図のような構文木で表し、これを深さ優先順で、「左部分木、右部分木、節」の順に走査すると得られる「AB+CD−×」は、この式の逆ポーランド表記法となっている。
中置記法で「(A+B÷C)×(D−F)」と書かれた式を逆ポーランド表記法で表したとき、最も適切なものはどれか。
問題文の画像
  • ABC÷+DF−×
  • AB+C÷DF−×
  • ABC÷+D×F−
  • ×+A÷BC−DF
  • AB+C÷D×F

次の問題へ

正解!素晴らしいです

残念...

この過去問の解説 (2件)

01

答えは1です。

逆ポーランド記法に慣れている方なら選択肢を見ただけで1以外はありえないとわかると思います。

(何かの計算)(何かの計算)演算子

が再帰的に続いている必要があります。

順番に見ていきます。

(A+B÷C)×(D-F)で最終的に演算するのは下線部の×なので

(A+B÷C)(D-F)×

となります。D-Fの逆ポーランド記法は例にもあるようにDF-なのでそのようにします。

(A+B÷C)DF-×

B÷Cを先に計算するので、逆ポーランド記法BC÷にします

(A+(BC÷))DF-×

それにAを足すので

ABC÷+DF-×

と最終的になりました。

順を追っていけば難しくはないのですが、情報工学系の人でも苦手な人は結構いますので、切ってしまっていいかもしれません。

参考になった数46

02

逆ポーランド表記法についての問題です。

選択肢1. ABC÷+DF−×

最終的な演算は×なので、最後にきている選択肢は2つあります。

このうち、右側の項D-Fは、DF-となります。

まとめ

大きい括りから順に紐解いていきます。

参考になった数3