자바 배열 활용 퀴즈
성적 관리 프로그램
n명의 학생 점수를 입력받아 점수 총합, 평균, 최대값, 최소값을 출력하라.
접근 방법
1.학생 수를 입력받는다.
2.학생 수 대로 점수를 입력받는다.
3.모든 학생 점수의 총합과 평균을 나타낸다.
4.최댓값 과 최솟값을 나타낸다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 1.학생 수를 입력받는다.
Scanner sc = new Scanner(System.in);
System.out.println("점수를 입력할 학생 수");
int n = sc.nextInt();// 학생 수를 입력 받는다.
int[] scores = new int[n]; // 배열의 크기는 n이다.
// 2.학생 수 대로 점수를 입력받는다.
for (int i = 0; i < n; i++) {// 학생 수 만큼 반복되도록 한다.
System.out.println("학생[" + i + "] 점수 입력:");
scores[i] = sc.nextInt();// 각 배열안에 학생들의 점수가 저장된다.
}
// 3.모든 학생 점수의 총합과 평균을 나타낸다.
int sum = 0;
for (int i = 0; i < n; i++) {
sum += scores[i]; // 각 배열의 값을 sum에 더하여 총합을 구한다.
}
System.out.println("합계 = " + sum);
double avg = ((double) sum) / n; // 총합 / 학생수 = 평균
System.out.println("평균 = " + avg);
// 4.최댓값 과 최솟값을 나타낸다.
// 4.1 최댓값
// int max = Integer.MAX_VALUE;
// 배열 0부터 n-1까지 값을 비교하도록 한다.
int max = scores[0];// 배열 0값을 max에 전달한다.
for (int i = 1; i < n; i++) {
if (max < scores[i]) { // Max 값 보다 큰 경우 max에 값을 전달한다.
max = scores[i];
}
}
System.out.println("최댓값 = " + max);
// 4.2 최솟값
// int min = Integer.MIN_VALUE;
// 배열 0부터 n-1까지 값을 비교하도록 한다.
int min = scores[0];// 배열 0값을 min에 전달한다.
for (int i = 1; i < n; i++) {
if (min > scores[i]) {// Min 값보다 작은 경우 min에 값을 전달한다.
min = scores[i];
}
}
System.out.println("최솟값 = " + min);
sc.close();
}
}