第50回
プログラミング・クイズで腕試し~簡易積算プログラムを作ろう

プログラムの基本的な仕様

プログラム名は“ezcalc”とします。ソースファイルは“ezcalc.c”です。ソースは複雑なものにはならないので、ソースファイルが1つだけのシングル・モジュールとします。
起動時にはコマンドラインオプションを採りません。プログラム名だけで起動します。起動すると、次のような動作をします。

基本的な動作

プログラムの基本的な動作は、以下のようになります。

(1) 演算子の入力――プロンプトを表示
→ ユーザーが計算に使用する演算子(+-*/のどれか)を入力する(キーを押すだけで[Enter]は不要)。
   +-*/および終了を示す'Q'以外が入力されたら演算子を再入力する。

(2) 数値を入力――プロンプトを表示
→ ユーザーが数値を入力して[Enter]キーを押す

(3) 数値を入力――プロンプトを表示
→ ユーザーが数値を入力して[Enter]キーを押す
(1)で入力した演算子に従って、(2)で入力した数値と(3)で入力した数値とを演算する。

(4) (3)の演算結果を画面に表示

(5) 数値を入力――プロンプトを表示
→ ユーザーが数値を入力して[Enter]キーを押す
(1)で入力した演算子に従って、(3)で演算した結果の数値と(5)で入力した数値とを演算する。

(6) (5)の演算結果を画面に表示
      :

演算子を変更しない限り、(1)で入力した演算子に従って入力した数値を演算し続ける。例えば、最初に+キーを押せば、それ以降に入力した数値がすべて加算されていきます。

演算子の変更

途中で演算子を変更するには、数値を入力するプロンプトが表示されているときに、何も入力しないで[Enter]を押します。

すると、演算子を入力するプロンプトが表示されるので、+-*/のどれかを入力します。このとき、[Enter]は不要です。

演算子を変更すると、それ以前の演算結果とそれ以降に入力した数値とが、変更した演算子に基づいて演算されます。以降、演算子を変更しない限り、直前に入力した演算子に基づいて演算が繰り返され、数値を入力して[Enter]を押すたびに演算結果が表示されます。

プログラムの終了

演算子の入力時に[Q]キーを押すと、プログラムは終了します。

動作の例

プログラムの動作の一例を、画面表示で見ておきましょう。まず加算(+)で連続して計算し、途中から演算子を減算(-)に変更した場合の表示は、画面1のようになります。