[2023 코딩테스트] 평균

고지훈·2023년 6월 13일

[2023] CodingTest

목록 보기
2/12

2023.06.13 / 후훗.. 문제가 조금 더 자세히 설명되어있으면..

평균

import java.io.*;

public class DemoApplication {

    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int N = Integer.parseInt(br.readLine());
        String[] sNum = br.readLine().split(" ");

        float maxNum = Float.parseFloat(sNum[0]);
        float sum = 0;

        for(int i = 0; i < sNum.length; i++) {
            float curNum = Float.parseFloat(sNum[i]);
            if(maxNum < curNum) {
                maxNum = curNum;
            }
        }

        for(int i = 0; i < sNum.length; i++) {
            float curNum = Float.parseFloat(sNum[i]);
            sum += curNum / maxNum * 100;
        }

        System.out.println(sum / N);
    }
}
  • 숫자를 스페이스를 기준으로 입력받아 split메서드를 활용하여 배열에 넣는다.
  • 입력받은 숫자 중 최댓 값을 구하기 위해, 반복문을 돌아가며 최대 값을 셋팅한다.
  • 점수를 조작하기 위하여 반복문을 돌아가며 i번째 인덱스의 점수 / 최댓 값 * 100을 연산하여 sum변수에 더한다.
  • 출력문에서 합산한 값과 총 과목의 수를 나누어 출력한다.
profile
"계획에 따르기보다 변화에 대응하기를"

0개의 댓글