応用情報23年 秋 午前 問2

(今日から、10月16日に行われた、秋期試験の問題解説です)

【問題を解く前に】

基礎理論→基礎理論→3. 情報に関する理論→(5)形式言語
の「逆ポーランド記法

【解き方】
逆ポーランド記法のやり方を知らないと、さすがにできませんね。
やり方は、
  A+B
とかあったとき、演算子を後にかく
  AB+
というものです。

だから、A+BXCは、AB+で・・・

・・・となって混乱してしまったあなたのために、

こういう法則があります。

答え(ここでは選択肢)に対して

1.符号が出てくるまで、突き進んでください

2.符号が出てきたら、
  直前の数字・文字・かたまりを符号の後におき

3.数字・文字・かたまり 符号 2で置き換えた文字
  を()でくくって一塊にしてください

4.1に戻る


さて、ここで、問2の選択肢をみてみると・・・

アについて 一番初めから、記号なので、2の操作ができない・・・違う
 
イについて 一番初めから、記号なので、2の操作ができない・・・違う

ウについて
1.Xがでてくる

2.直前の文字は、Cなので、Xのあとにもってきて・・・

3.BXCを1かたまりとみなす

  A (BXC) +

4.1にもどる

2回目の
1.+がでてくる

2.直前の文字・塊は、(BXC)なので、それを+のあとにもってくると・・・

3.A+(BXC) 括弧ははずしても順番変わらない
  A+BXC・・・これだ!


エについて
1.+がでてくる

2.直前の文字はAなので、それを後ろに持ってくる

3.B+Aを1塊と見なす

   C (B+A) X

4.1にもどる

2回目の
1.Xがでてくる

2.(B+A)をうしろにもってくる

3.CX(B+A)・・・なんか、ちがうぞ (^^;)


ということで、答えは

【答え】

【解き終わって】

これ、別に変わったことをやっているわけではなく、
逆演算をしているだけです。
コンピューターの中では、これに近いことをして、
計算をしているみたいです

くわしくは、ここ
http://ja.wikipedia.org/wiki/%E9%80%86%E3%83%9D%E3%83%BC%E3%83%A9%E3%83%B3%E3%83%89%E8%A8%98%E6%B3%95
の「計算動作の例」を参照。
コンピューターの場合、塊をつくるかわりに、計算して、結果をスタックに積んでいる。



★(PR) まぐまぐでメルマガ始めました。以下のとおりです。よかったら、登録してくださいね!
●メルマガID:0001289711
 【メルマガタイトル】 試験と実務の関連を説明する−実践!情報処理試験講座 メール版
 【個別ページ】 http://www.mag2.com/m/0001289711.html