본문 바로가기

🏆 Algorithm/🎲 프로그래머스 [Programmers]

[JAVA] 최댓값, 최솟값 구하기

package study;

import java.util.Scanner;

public class Study01MaxMin {

	public Study01MaxMin() {
	}

	public static void main(String[] args) {


		Scanner scan = new Scanner(System.in);

		// 입력받은 값을 저장하는 변수 선언 
	
		int n = scan.nextInt(); 

		// 배열에 저장된 정보를 반복문을 통해서 꺼내기 
		System.out.println(n);
		
		int[] arr = new int[n];
		
		for(int i = 0; i < n; i++) {
			arr[i] = scan.nextInt();
		}
		
		// 최댓값
		int max = arr[0];
		// 최솟값
		int min = arr[0];
		int idx = 0;
		int count = arr.length;
		// 반복문 돌리면서 최대값 최솟값 구하기
		
		// idx 위에서 선언을 한 번 해줬을 때 재 선언이 안된다.
		for (idx = 1; idx < count; idx++) {
			// 가장 큰 값을 구하려면 어떻게 해야할까?
			// 문자 배열을 돌면서 서로 하나씩 비교를 해야한다.
			// 인덱스 번호 0번과 1번 비교해서 큰 걸 비교하고 큰 걸 담기
			// 첫번쨰 숫자보다 배열 인덱스0~어쩌구 보다 크면
			if (arr[idx] > max) {
				max = arr[idx];
			}else if(arr[idx] < min) {
				min = arr[idx];
			}
		}
		System.out.println("max : " + max);
		System.out.println("min : " + min);
		System.out.println("int idx : " + idx);
		
	}
}

1. Scanner 사용하기 

Scanner scan = new Scanner(System.in);
int n = scan.nextInt(); // int형 변수 n에 사용자의 입력값을 받아오기

2. 사용자가 입력한 변수 n 을 길이로 하는 배열을 생성하는 방법 

for(int i = 0; i < n; i++){
	arr[i] = nextInt();
}