最大値、最小値を求める

最大値

与えられた複数の数値の最大値を求める処理を考えます。最大値を記憶するために専用の変数を max という名前としています。maxの初期値をどうするかはいろいろな考え方がありますがここでは、先頭のデータ data[0]とします。この変数は「仮の最大値」として取り扱われます。

このmaxと、次のデータの値の比較をします。比較してより大きな値が見つかった場合には、仮の最大値を新しい値に代入し直します。すべてのデータに対して一通り処理が行われれば、maxに記憶されている値が最大値ということになります。 最小値を求めるアルゴリズムもまったく同じ考え方でできます。

プログラム名 Saidai01.java

public class Saidai01 {

    public static void main( String[] args ) {

        int[] data = { 52, 46, 24, 12, 15,
                       35, 18, 56, 63, 23,
                       10, 98, 29, 32, 90,
                       45, 64,  8, 16, 82
                     };

        int max = data[0];
        for( int i=1; i<data.length; i++ ) {
             if( data[i] > max ){
                 max = data[i];
             }
        }
        System.out.println( "最大値:" + max );
    }
}

動作結果

$ java Saidai01
最大値: 98

課題

1.

最小値を求めて表示するプログラムにしなさい。

プログラム名 Saishou01.java

2.

ファイルの中にデータがあって、その中の最大値を表示するプログラムをつくりなさい。

プログラム名 Saidai02.java

ファイル名  data01.txt

ファイルの中身は次のようにします。データの内容は任意でよい。

52
46
24
12
15
35
18
56
63
23
10
98
29
32
90
45
64
8
16
82
もくじ

聖愛高等学校
http://www.seiai.ed.jp/
Last Modified