간단한 문제인데 기본적인 것들을 신경써야하는 문제.
* 값을 나눌때 소숫점 아래까지 결과값이 나와야한다. 그래서 정수형(int)이 아니라 실수형(double/float)으로 타입을 맞춰줘야한다.
<구해야 할 것>
1. 세준이의 점수중에서 가장 높은점수 max.
2. 세준이가 수정한 점수.
2. 수정된 점수의 평균.
<내 풀이방식>
1. Scanner로 첫줄에 점수의 개수 N 입력받기.
2. 둘째줄에 점수들을 for문 돌려서 배열로 입력받기(배열 타입 실수형)
, 입력받으면서 최고점수 max구하기
4. for문을 돌려 각각의 점수들을 수정해주기.(점수/max*100)
, 수정한 점수들을 모두 더해서 변수 sum 값으로 할당.
5. sum/N 해서 점수의 평균값을 구해준다.
6. 평균값 totalAvr 출력.
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
double avr = 0;
double sum = 0;
double totalAvr = 0;
double[] score = new double[N];
double max = 0;
for(int i=0;i<N;i++){
score[i] = sc.nextDouble();
if(score[i]>max){
max = score[i];
}
}
for(int j=0;j<N;j++){
avr = score[j]/max*100;
sum += avr;
}
totalAvr = sum/N;
System.out.println(totalAvr);
}
'백준' 카테고리의 다른 글
[백준 25304] 영수증 자바 (0) | 2022.08.08 |
---|---|
[백준 8958] OX퀴즈 자바 (0) | 2022.08.07 |
[백준] 2739번 구구단 문제 (0) | 2021.10.23 |
[백준] 10950번 A+B - 3 문제 (0) | 2021.10.22 |
[백준] 2884번 알람시계 (0) | 2021.10.20 |