나열된 수에서 최솟값 최대값 및 위치 구하기 {연습문제}

문제 정의

  • 여러 개의 수가 배열에 있을 때 그 중 가장 큰 값과 가장 작은 값을 찾는다.
  • 배열의 몇 번째에 있는지 순서를 찾는다.
  • 반복문을 한번만 사용하여 문제를 해결한다.
  • 수의 예 : [10, 55, 23, 2, 79, 101, 16, 82, 30, 45]

결과 출력 예시

//  [10, 55, 23, 2, 79, 101, 16, 82, 30, 45] 


System.out.println("가장 큰 값은 " + max + "이고, 위치는 " + maxPos + "번째 입니다.");
System.out.println("가장 작은 값은 " + min + "이고, 위치는 " + minPos + "번째 입니다.");

 

풀이

package useful.ch04;

import java.util.Arrays;

public class MaxMin2 {

	public static void main(String[] args) {
		int[] array = { 10, 55, 23, 2, 79, 101, 16, 82, 30, 45 };
		int maxPos = 0;
		int minPos = 0;
		int max = array[maxPos];
		int min = array[minPos];
		for (int i = 0; i < array.length; i++) {
			// 0번부터 비교하여 더 큰 값을 max에 담아서 끝까지 감
			if (max < array[i]) {
				max = array[i];
				maxPos = i + 1;
			}
			// 0번부터 비교하여 더 작은 값을 min에 담아서 끝까지 감
			if (min > array[i]) {
				min = array[i];
				minPos = i + 1;
			}
		}
		System.out.println("가장 큰 값은 " + max + "이고, 위치는 " + maxPos + "번째 입니다.");
		System.out.println("가장 작은 값은 " + min + "이고, 위치는 " + minPos + "번째 입니다.");

	}

}

가장 큰 값은 101이고, 위치는 6번째 입니다.

가장 작은 값은 2이고, 위치는 4번째 입니다.

 

Java 유용한 클래스 - 3 으로 돌아가기

'Java > Java 유용한 클래스' 카테고리의 다른 글

Java multi-threading - 5  (0) 2024.05.01
Java Thread - 4  (1) 2024.05.01
Exception(예외처리) - 3  (0) 2024.04.29
String, StringBuffer 클래스 - 2  (1) 2024.04.26
Object 클래스 - 1  (0) 2024.04.25