この章では足し算の練習プログラムを作成します。
問題を5問解いて、正解数をカウントします。
次は初めのfor文の中を説明します。 =>rand関数は乱数を返します(関数については「関数について知ろう」でします。)。
計算をするのに毎回違う数を使いたいのでrand関数を使います。
具体的には0から32767までの数字の中でランダムな数を返します(詳しくは「switch文で占いを判定しよう」で説明します)。
範囲を限定したい場合には例えばと書きますと1から6までの中でランダムな数を返すようになります。
この例であれば1から50までのランダムな数を返します(詳しくは「switch文で占いを判定しよう」で説明します)。
rand関数を使うためには文頭でと書かなくてはいけませんので注意してください。
では次の箇所の説明をします。 => number1とnumber2の足し算の文を表示します。
つまり、以下の赤枠の箇所です。 =>答えをinput変数に代入します。
answer[i]=input;
=> scanfで入力した値が入っているinputを配列であるanswerに入れます。
for文で5回繰り返しているので、その都度入力した値が配列に入ります。 result[i]=number1+number2;
=> number1とnumber2の結果(つまり正解値)をresult配列に代入します。
for文で5回繰り返しているので、その都度正解値が配列に入ります。
次の箇所の説明をします。 =>ここでは配列answerに入っている答えと配列resultに入っている答えを比べて、正解ならば変数rightanwerに1を足します。
for文で5回繰り返しているので、その都度答え合わせをして、正解ならば変数rightanwerに1を足します。
結果は以下の通りです。
実はこの計算プログラムは何回実行しても同じ計算式しか表示されません。
毎回違う計算式を表示させたいのならば、以下の赤枠の記述を付け加えます。
詳しくは「switch文で占いを判定しよう」で説明します。
カテゴリー