切符の幸せ、プログラム(1)

ある4つの一桁の正の整数が四則演算とカッコだけを用い10
になるかどうかを判定し、なるならその計算式を返すプログラ
ムの開発メモ。
10になるとその日はいいことがあるらしい。

大きく2つの機能に分けて開発する。
・四則演算、かっこを駆使した計算式を全パターン生成する
・生成された計算式のパターンを解析・計算する

まず、解析・計算の機能から作る。
せっかくなので一桁に限らず、複数桁に対応するものを作る。と思ったけど、やっぱりまずは必要最低限だけを作ることにする。
負の数、小数点には今は未対応。戻り値は小数。

1.逆ポーランド記法構文解析
計算式は文字列で与えられる。
それを逆ポーランド記法に変換して計算する。
http://www.gg.e-mansion.com/~kkatoh/program/novel2/novel208.html
http://www.logical-paradox.org/index.php?%B7%D7%BB%BB%BC%B0%B2%F2%C0%CF
http://www.wakayama-u.ac.jp/~takehiko/honkarac/elde/parsing.htm

2.スタック
逆ポーランド記法ではスタックを使う。
スタックの実装も自分でやる。
クラスが便利。
http://www.mapee.jp/cpp/c.html