基本情報技術者(基礎理論⑦)

基本情報技術者

今回は「計算式の表現方法(中置記法、前置記法、後置記法)」についてご紹介します!
「おいおい、計算式なんて小学校で習ったじゃん…」ってなった方!
その通りです。我々が普段使用する「2+5」なども計算式の一種で中置記法といいます。
ではほかにはどのような計算式の表現方法があるのか見ていきましょう!
(超簡単です(^▽^)/)

中置記法

中置記法というのは「数字と数字の間に「+」「-」などの演算子を置く表記法」です。
これは私たちが普段一番使用している表記法です!そう、小学校で習ったやつ(笑)

前置記法(ポーランド表記法)

前置記法というのは数字の前に「+」「ー」といった演算子を置く記法です。
前置記法では数と数の間にスペースを入れることで区切りをつけます。前置記法はポーランド論理学者ヤン・ウカセヴィチが考え出したことからポーランド表記法という別名があります。
前置記法を用いることで、数式に括弧を付ける必要がなくなるメリットがあります。(他にもあり。)例として中置記法で「(4+3)×7」を前置記法にして表現してみましょう。

中置記法→前置記法の変換には演算優先順位が低いものから順番に前に出し、最後に括弧をとることで変換完了となります。優先順位は
括弧>かけ算・わり算>たし算・ひき算
で通常の四則演算と同じ優先順位となっています。

後置記法(逆ポーランド記法)

後置記法というのは数字の後ろに「+」「ー」といった演算子を置く記法です。
基本的に演算子を後ろに置くこと以外の表記ルールは前置記法と同じです。
後置記法には逆ポーランド表記法という別名もあります。
ちなみにですが、基本情報技術者試験において問われるのは後置記法のみです。中置記法、前置記法は問われません。なぜ問われないかというとコンピュータ内部で使用されている表記法が後置記法だからです!
後置記法とスタックという2つの技術を組み合わせて演算を行っています。
スタックについては別記事にいたします!
では例として中置記法で「(4+3)×7」を後置記法にして表現してみましょう。

まとめ

いかがだったでしょうか。
計算などが不要で、単純な作業となるので簡単だ。と感じた人も多いのではないでしょうか。
「通常の四則演算で優先順位が低い演算子から順番に取り出して、空いたところにはスペースを入れる。」というのは前置記法であっても後置記法であっても同じです。この2者の違いは演算子を置く場所のみです!

①中置記法は普段私たちが一般的に使用している記法
②前置・後置記法に問わず「通常の四則演算で優先順位が低い演算子から順番に取り出して、空いた箇所にスペースを入れる」
③前置記法では演算子は前に置く。
④後置記法では演算子は後ろに置く。



コメント