문제
풀이
보기보다 간단한 문제이다.
for문은 총 3번 사용하였고
풀이로 배열을 두가지를 선언하였는데 arr[]이 입력받은 시험점수의 배열이고
arr2[]는 입력받은 점수들을 점수/M*100을 한 점수들의 배열이다.
소수자리까지의 연산이 필요하기 때문에 자료형은 double을 사용하였다.
maxScore는 입력받은 성적의 최고점수인데 for문을 이용하여 Math.max함수를 써서
arr[]의 점수들중 최고 점수를 maxScore에 담았다.
최고점수가 Math.max함수를 통해 구해졌기때문에
for문을 통한 연산으로 arr2[]에 들어갈 점수들을 구할 수 있게 된다.
3번째 for문으로는 바뀐 성적의 점수들의 합을 구하도록 만들었다.
출력문으로 모든 점수들의합(sum) / 과목수(N) 를 통해 평균을 구할 수 있다!
import java.util.Scanner;
public class b1546 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int N = in.nextInt();
double maxScore = 0;
double sum=0;
double arr2[] = new double[N];
double arr[] = new double[N];
for(int i=0; i<arr.length; i++){
arr[i] = in.nextInt();
}
for(double i : arr) maxScore = Math.max(i, maxScore);
for(int i=0; i<arr.length; i++) {
arr2[i] = arr[i] / maxScore * 100;
}
for(int i=0; i<arr2.length; i++) {
sum=sum+arr2[i];
}
System.out.println(sum/N);
}
}
'백준' 카테고리의 다른 글
[백준] 10610번: 30 - JAVA(자바) / 그리디 알고리즘 (0) | 2022.11.30 |
---|---|
[백준] 11047번: 동전 0 - JAVA(자바) / 그리디 알고리즘 (0) | 2022.11.29 |
[백준] 2563번: 색종이- JAVA(자바) (0) | 2022.11.18 |
[백준] 1110번: 더하기 사이클 - JAVA(자바) (0) | 2022.10.31 |
[백준] 2525번: 오븐시계 -JAVA(자바) (0) | 2022.10.19 |