최댓값을 구하기 위해 사용하는 방법이 두가지 있다.
이 두가지만 기억하면 최댓값 문제는 껌이다.
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으로 초기화 하는것을 잊지 말도록 하자.
문제마다 요구사항이 다르다는 것을 인지하고 요구사항에 따라 코드를 다르게 짜면서 해당 코드가 오류가 없는지 고민하고 사색하는 것이 중요.