2020/3/23

数学

複数の値の最小値と最大値

複数の数値の最小値最大値を計算するプログラムを解説します。

任意の値を配列に格納し、その中から最小の値と最大の値を見つけます。

以下のように、7つの数値が与えられた場合、

	10、22、7、9、2、67、18

最小値最大値はそれぞれ

	最小値 = 2
	最大値 = 67

となります。

Javaソースコード

以下が、配列から最小値最大値を求めるJavaのソースです。

MinMax2.java

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020
021
public class MinMax2 {
	public static void main( String[] args ) {
		// 最小値と最大値を格納する変数を宣言
		int   min, max;
		// 数値群
		int[] num = { 102, 506, 332, 9, 45, 88, 12, 367 };

		// 最小値と大値を初期化(num[0]を代入)
		min = max = num[ 0 ];
		for ( int i = 1; i < num.length; ++ i ) {
			// minとnum[i]の小さいほうの値をminに代入
			min = Math.min( min, num[ i ] );
			// maxとnum[i]の大きいほうの値をmaxに代入
			max = Math.max( max, num[ i ] );
		}

		// 結果を表示
		System.out.println( "最小値=" + min );
		System.out.println( "最大値=" + max );
	}
}

実行結果

コンパイル ソースコードが「ANSI」の場合

C:\talavax\javasample>javac -encoding sjis MinMax2.java

コンパイル ソースコードが「UTF-8」の場合

C:\talavax\javasample>javac MinMax2.java

MinMax2を実行

C:\talavax\javasample>java MinMax2
最小値=9
最大値=506

int型配列numに格納されている値の最小値最大値コンソール出力されます。

Javaソースコードの解説

最小値最大値を計算するプログラムについて解説します。

005
006
		// 数値群
		int[] num = { 102, 506, 332, 9, 45, 88, 12, 367 };

この例では、8個の数値をint型配列で与えています。

008
009
		// 最小値と大値を初期化(num[0]を代入)
		min = max = num[ 0 ];

最小値を格納する変数minと最大値を格納する変数maxに、最初の数値(num[ 0 ])を代入しています。

010
011
012
013
014
		for ( int i = 1; i < num.length; ++ i ) {
			// minとnum[i]の小さいほうの値をminに代入
			min = Math.min( min, num[ i ] );
			// maxとnum[i]の大きいほうの値をmaxに代入
			max = Math.max( max, num[ i ] );

for文を使った(8-1)回(num.length-1)のループで、配列に中の数値と、変数minと変数maxの大きさを比較して、それぞれ小さい値と大きい値を代入していきます。このループを抜けたときの変数minが最小値変数maxが最大値になります。

017
018
019
		// 結果を表示
		System.out.println( "最小値=" + min );
		System.out.println( "最大値=" + max );

結果を表示しています。

以上です。

関連コンテンツ

数学に関係するJavaのメソッドやソースコードなどを紹介しています。

2022.10.25

2つの値のうち、小さい方の値と、大きい方の値を取得する方法。

2020.03.23

3つの値のうち、一番小さい値と、一番大きい方の値を取得する方法。配列は不使用。

2020.06.18

プログラミングで使う変数って何?

2020.03.23

同じ型の変数(データ)を複数個まとめて管理するデータの持ちかたがあります。これが配列です。くわしくは、記事をご覧ください。

2016.01.14

画像フォーマット形式・色・大きさ・傾きなどの変更、特定の図形(文字・記号など)を見つけたり、取り出したりする画像処理について詳しく解説。

2015.11.29

プログラミング、ITに関する用語をまとめています。

2022.10.17

変数やクラスに格納されている値をコンソール出力する方法は?

2020.03.23

プログラムの最初に実行されるメソッドは?

2022.12.13

Javaのプログラムを書いてみませんか?プログラムの書き方をくわしく説明しています。

2020.03.23

「Javaソースコード」から実行可能な「オブジェクトコード」に変換する方法をくわしく説明しています。

2020.03.23

プログラミング言語とは?種類や特徴について説明しています。

2022.08.03

for文で変数名iがよく使われる理由について説明しています。興味のある方は是非。

2022.08.29

処理を繰り返すために使用するfor文について解説しています。

2020.03.23

繰り返し処理の作り方を解説しています。

2016.03.02

広告