0015 号 編集後記

お題 夏休みの予定

ささだ
夏休みあるのかなぁ。
なかむら
子供と遊びます。……まだ遊べないか。
青木
原稿と原稿と原稿を書く。できればイタリアかインドに行く。
しばた
キャンプに行く予定。
zunda
おいしいの?……って去年も書いたか。今年は秋休みを取れそうなので許して。

夏休みの宿題 – ポーランド記法

さて、今号の Rubyist Magazine はいかがでしたか? 読むばかりでは手は鈍ってしまうので、最後に夏休みの宿題です。

問題

今号の「Rubyist のための他言語探訪」に、「ポーランド記法 (前置記法)」と「逆ポーランド記法 (後置記法)」というものが登場しました。 今回はこれら 2 つの記法の相互変換を行ってみてください。元のデータは、”+ 0 1” のように文字列でも [:+, 0, 1] のような配列による表現でも構いません。 対象とする演算子は、整数の四則演算子 (“+”, “-“, “*”, “/”) です。 ただし、それぞれの演算子は引数を 2 つとり、変換対象の式には括弧を含まないものとします。 そして、少なくとも、次のものを相互に変換できることを確認してください。

ポーランド記法 - + 1 / 2 2 + 3 * 4 5
逆ポーランド記法 1 2 2 / + 3 4 5 * + -

また、これだけではつまらない人は、(1) 変換の様子を何らかの方法で可視化し、(2) 計算結果を表示させてみても良いでしょう。

回答はこちらへ