[Bronze 3] 9개 자연수 중 최댓값

devKyoun·2023년 4월 26일
0
post-thumbnail

Problem


Max Algorithm

최댓값을 구하기 위해 사용하는 방법이 두가지 있다.

  • 입력되는 수의 범위 파악 후 Max 변수를 가장 작은 수와 같거나 더 작은수로 설정 할 것
  • if 문을 통해 해당 원소가 Max보다 클 경우 Max를 갱신 하는 것

이 두가지만 기억하면 최댓값 문제는 껌이다.


Answer

import java.util.Scanner;

public class Main {
	
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		int[] numbers = new int[9];
		int max = 0, maxPos = -1;
		//9개 자연수 입력
		for(int i=0; i < numbers.length; i++) {
			//예외처리 생략
			numbers[i] = input.nextInt();
			if(max < numbers[i]) {
				max = numbers[i];
				maxPos = i+1;
			}
		}
		
		System.out.printf("%d%n%d", max,maxPos);
        
		input.close();
	}
}

출력예시를 보면 Max가 몇번 째인지 까지 묻고 있다.
그럴 경우 if 문 안에 maxPos 변수를 갱신하는 코드를 넣어주면 된다.

난 이 문제에서 9개 자연수 중 첫번째 자연수를 Max로 초기화 하지 않았다.

첫번째 자연수를 Max로 초기화 하려는 경우에 해당 문제에서는 maxPos을 0으로 초기화 하는것을 잊지 말도록 하자.

문제마다 요구사항이 다르다는 것을 인지하고 요구사항에 따라 코드를 다르게 짜면서 해당 코드가 오류가 없는지 고민하고 사색하는 것이 중요.


profile
Game Developer

0개의 댓글