next up previous
Next: 第 13 回 Up: 計算機言語 I 第 12 Previous: 実際のプログラム

今回のテキストと演習問題

テキストはいつもの場所には入れる予定ですが, 今回は stack の図の ファイルも必要で, 次の 2つのファイルになります.
12.tex, stack.eps

問題

  1. $(1+2)\times 3 + (4+5)\times(7-8)$ を逆ポーランド記法に直せ. かけ算は * を使って良い.
  2. 配ったプリントの pop() はバグがあります. 書き直して下さい.
  3. 例のプログラムでは, 1 2 4 + ENTER 意味の無い入力になる. これをやめて, この場合は計算式の意味のある部分だけを評価して (この例だと, 2 4 + の部分だけを計算する.) 答えを出力するように, プログラムを書き換えよ.
  4. (難問) 通常の 4則の記法(例えば, 1+2*3)が計算できる 電卓プログラムを書け.(例だと答は 7)
  5. (更に難問) 上のプログラムで括弧も扱えるようにせよ.
最期の 2つは, 講義では扱っていない 2分木の概念が必要です. ただし, とても勉強になる問題ですので, 時間に余裕がある方は 是非挑戦してみて下さい. できた方には優で単位をあげます.

Next: 第 13 回 Up: 計算機言語 I 第 12 Previous: 実際のプログラム