解答は earth.mlab.im.dendai.ac.jp の /home/submit/1I-Computer1/[今日の日付]/[学籍番号] のディレクトリに提出しなさい。 ソースファイル (〜.java) のみを提出すること。
ファイルの送信には ftp ソフトを用いる。 Linux の gFTP を使った提出方法 (実験室のマニュアル) を参照すること。
授業中示した 3 つの値の最大値を求めるプログラム (3 種類のどれでも良い) を改造して、どの変数が最大だったか、その変数名を表示するようにしなさい。 ファイル名は MaxVariable.java とする。
この問題の解法は何通りか考えられる。 ひとつの方法は、どれが最大値だったかの情報を変数に記録しておく方法である。 たとえば、 x が最大なら isXMax = true, 最大でないなら isXMax = false などとする。
もう一つの方法として、最大値を求めた後で、それが x に等しいか、 y に等しいか、 z に等しいか、と調べるやり方も可能である。
もちろん、これ以外の方法を用いても良い。
3 つの値 x, y, z の中央値(メジアン)を求めて出力するプログラムを作成しなさい。 なお中央値とは、データを大きさの順に並べたときに中央の順位にくる値である。 3 つの値はすべて異なるものとする。 プログラム名は Median3 とする。
定期試験の点数が 89, 55, 32, 94, 60 の人がいたとして、 点数が60点以上の人の平均点を求めるプログラムを書きなさい。 はじめに 5 人の点数を 5つの int 型の変数に代入しておくこと。
class AverageOfSuccessor { public static void main(String[] args) { int student1 = 89; int student2 = 55; int student3 = 32; int student4 = 94; int student5 = 60; .... 点数が60点以上の人の平均点を求めるプログラムをここに書く } }
この計算を行うと、平均点は 81 点となるはずである。
ヒント: 平均をとる場合には対象の人数を数える必要がある。 人数を数えるための変数を用意し、 60点以上の人を数えるようにすると良い。
プログラムの名前は AverageOfSuccessor とする。