본문 바로가기

Java/본격 Java 퀴즈 기초

[Java] 학생 수를 입력 받아 평균 구하기(배열, for문, scanner 사용)

배열 연습 문제
한 과목의 반 평균을 구하는 프로그램 작성
키보드에서 학생수를 입력 받는다.
입력한 학생 수 만큼 과목의 짐수를 키보드에서 입력한다.
점수는 0~100사이로 입력하고 그 외의 값은 메세지를 표시하고 다시 입력하도록 한다.
과목의 점수 입력이 완료되면 합계와 평균을 계산하여 출력한다.

.

.

import java.util.*;
import java.math.*;

public class StudentAverage {
	public static void main(String[] args) {
		
		double total = 0.0;
		Scanner sc = new Scanner(System.in);
		
		System.out.print("학생수 : ");
		int stNum = sc.nextInt();
		
		int[] arrSt = new int[stNum];
		
		for(int i = 0; i < stNum; i++) {
			System.out.print("학생" + (i + 1) + "의 점수 : ");
			arrSt[i] = sc.nextInt();
			if(arrSt[i] > 100 || arrSt[i] < 0) { // 점수가 0미만이거나 100초과인 경우
				System.out.println("잘못된 점수 입니다. 다시 입력해 주세요.");
				i--;
				continue;
			}
		}
		
		for(int i = 0; i < stNum; i++) {
			total += arrSt[i];
		}
		System.out.println("학생 " + stNum + "명의 총합은 " + total +  "점 입니다.");
		System.out.println("학생 " + stNum + "명의 평군은 " +Math.round(total / stNum * 100) / 100f +  "점 입니다.");
	}
}
728x90
반응형