☆ 演習6−1 ☆(アルゴリズムの学習の準備1)
簡単な「CMI」いう教育システムを作成する。
3教科の点数を入力すると、自動的に最高点を導き出すアルゴリズムを作成しなさい。
ただし、点数の入力時には「条件値判定繰返し」を、そして、最高点を導き出すためのアルゴリズムには「選択」の構文を必ず用いること。
また、各教科の点数は配列Aに代入し、仮の最大値を変数max(数値)に格納していくことで、最終的に最大値を求めることにする。
なお、カウンタの役割として、変数i(数値)も用いることにする。
条件値判定繰返しや選択の構文は過去の演習で学んでいますね。
今回はその複合です。
作成するシートは以下のようになります。
では順を追って説明していきましょう。
しっかりと3回入力しています。
そして、今回打ち込んだ数値で一番大きい数値は2番目に入力した80ですね。
最大得点もしっかりと出力されています。
配列へのデータの代入方法や、最大値を求める方法をしっかりと覚えておきましょう。
まず始めはこの部分。
ここではまず、変数iが始めは1で3になるまで点数を入力させてますね。
入力された点数は配列として用意しておいた変数Aに格納されます。
次です。
ここではまずA[1]とA[2]を比べていますが、この式の意味がわかりますか?
これは、まず始めに変数配列Aに入力された数値(1)と次に入力された数値(2)を比べているんです。
そして、先に入力された数値[1]の方がが大きければ用意しておいた変数maxにA[1]の数値を、A[2]の方が大きければそちらの数値をmaxに格納しているんです。
最後に。
今までの作業で、maxという変数にはA[1]に格納された数値か、A[2]に格納された数値が入ったことはわかりますね。
今回は3回数値を聞いています。
二つの数値を比べて、どちらが大きいかだけでは最大値は判断できません。
そこで、最後に入力された数値A[3]と、A[1]、A[2]のどちらかの数値が入ったmaxを比べます。
ここまででmaxに格納された数値よりも、最後に入力された数値A[3]の方が大きければ、maxの数値を入れ替えています。
ここで元々maxに格納された数値の方が大きければ、特に入れ替え作業はせずに次の処理へ進みます。
では、実行結果を見てみましょう。