1021 - 성적표 만들기01 Review

1021 - 성적표 만들기01 Review

import java.util.Scanner; public class Ex03GradeBook01 { public static void main(String[] args) { // 상수 // 1. 최대 관리 가능한 학생수 final int STUDENT_SIZE = 5; // 2. 가능한 최저점수 final int SCORE_MIN = 0; // 3. 가능한 최고점수 final int SCORE_MAX = 100; // 4. 관리하는 과목수 final int SUBJECT_SIZE = 4; // 변수 Scanner scanner = new Scanner(System.in); int[] idArray = new int[STUDENT_SIZE]; String[] nameArray = new String[STUDENT_SIZE]; int[] koreanArray = new int[STUDENT_SIZE]; int[] englishArray = new int[STUDENT_SIZE]; int[] mathArray = new int[STUDENT_SIZE]; while(true) { System.out.println("1.입력 2.출력 3.종료"); System.out.print("> "); int userChoice = scanner.nextInt(); if(userChoice == 1) { //1.현재 입력이 완료된 인덱스가 몇번인지 찾는다. // 현재 입력이 완료된 인덱스는 스트링 배열에서 해당 칸의 값이 null이 아닌 인덱스를 찾는다. int idx = -1; for(int i=0 ; i=0 && idx "); idArray[idx] = scanner.nextInt(); System.out.println("이름을 입력해 주세요."); System.out.print("> "); scanner.nextLine(); nameArray[idx] = scanner.nextLine(); System.out.println("국어점수를 입력해 주세요."); System.out.print("> "); koreanArray[idx] = scanner.nextInt(); while(koreanArray[idx]SCORE_MAX) { System.out.println("잘못 입력하셨습니다."); System.out.println("국어 점수를 입력해 주세요."); System.out.print("> "); koreanArray[idx] = scanner.nextInt(); } System.out.println("영어점수를 입력해 주세요."); System.out.print("> "); englishArray[idx] = scanner.nextInt(); while(englishArray[idx]SCORE_MAX) { System.out.println("잘못 입력하셨습니다."); System.out.println("영어 점수를 입력해 주세요."); System.out.print("> "); englishArray[idx] = scanner.nextInt(); } System.out.println("수학점수를 입력해 주세요."); System.out.print("> "); mathArray[idx] = scanner.nextInt(); while(mathArray[idx]SCORE_MAX) { System.out.println("잘못 입력하셨습니다."); System.out.println("수학 점수를 입력해 주세요."); System.out.print("> "); mathArray[idx] = scanner.nextInt(); } } //4.만약 변경된 인덱스 값이 유효하지 않은 인덱스이면 경고 메세지만 출력한다. else { System.out.println("--------------------------------------"); System.out.println("더 이상 입력하실 수 없습니다."); System.out.println("--------------------------------------"); } } else if(userChoice == 2) { //1.현재 입력이 완료된 인덱스가 몇 번인지 찾는다. // 현재 입력이 완료된 인덱스는 스트링 배열에서 해당 칸의 값이 null이 아닌 인덱스를 찾는다. int idx = -1; for(int i=0 ; i=0) { for(int i=0 ; i<=idx ; i++) { int sum = koreanArray[i] + englishArray[i] + mathArray[i] ; double average = (double)sum / SUBJECT_SIZE; System.out.println("--------------------------------------"); System.out.println(nameArray[i] + "학생의 정보"); System.out.println("--------------------------------------"); System.out.printf("번호:%d번 이름:%s

", idArray[i], nameArray[i]); System.out.printf("국어:%d점 영어:%d점 수학:%d점

", koreanArray[i], englishArray[i], mathArray[i]); System.out.printf("총점:%d점 평균:%.2f점

",sum, average); System.out.println("--------------------------------------"); } } //3.만약 입력 완료 인덱스가 0인 경우, 경고 메세지만 출력한다. else { System.out.println("--------------------------------------"); System.out.println("아직 입력된 학생이 존재하지 않습니다"); System.out.println("--------------------------------------"); } } else if(userChoice == 3) { System.out.println("사용해 주셔서 감사합니다."); break; } } scanner.close(); } }

1.입력 2.출력 3.종료 > 2 -------------------------------------- 아직 입력된 학생이 존재하지 않습니다 -------------------------------------- 1.입력 2.출력 3.종료 > 1 -------------------------------------- 1번 학생 정보 입력 -------------------------------------- 번호를 입력해 주세요. > 12 이름을 입력해 주세요. > name1 국어점수를 입력해 주세요. > 45 영어점수를 입력해 주세요. > 45 수학점수를 입력해 주세요. > 43 1.입력 2.출력 3.종료 > 1 -------------------------------------- 2번 학생 정보 입력 -------------------------------------- 번호를 입력해 주세요. > 34 이름을 입력해 주세요. > name2 국어점수를 입력해 주세요. > 56 영어점수를 입력해 주세요. > 54 수학점수를 입력해 주세요. > 77 1.입력 2.출력 3.종료 > 2 -------------------------------------- name1학생의 정보 -------------------------------------- 번호:12번 이름:name1 국어:45점 영어:45점 수학:43점 총점:133점 평균:33.25점 -------------------------------------- -------------------------------------- name2학생의 정보 -------------------------------------- 번호:34번 이름:name2 국어:56점 영어:54점 수학:77점 총점:187점 평균:46.75점 -------------------------------------- 1.입력 2.출력 3.종료 > 1 -------------------------------------- 3번 학생 정보 입력 -------------------------------------- 번호를 입력해 주세요. > 34 이름을 입력해 주세요. > name3 국어점수를 입력해 주세요. > 56 영어점수를 입력해 주세요. > 77 수학점수를 입력해 주세요. > 77 1.입력 2.출력 3.종료 > 1 -------------------------------------- 4번 학생 정보 입력 -------------------------------------- 번호를 입력해 주세요. > 4 이름을 입력해 주세요. > name4 국어점수를 입력해 주세요. > 66 영어점수를 입력해 주세요. > 78 수학점수를 입력해 주세요. > 77 1.입력 2.출력 3.종료 > 1 -------------------------------------- 5번 학생 정보 입력 -------------------------------------- 번호를 입력해 주세요. > 5 이름을 입력해 주세요. > name5 국어점수를 입력해 주세요. > 66 영어점수를 입력해 주세요. > 77 수학점수를 입력해 주세요. > 66 1.입력 2.출력 3.종료 > 1 -------------------------------------- 더 이상 입력하실 수 없습니다. -------------------------------------- 1.입력 2.출력 3.종료 > 2 -------------------------------------- name1학생의 정보 -------------------------------------- 번호:12번 이름:name1 국어:45점 영어:45점 수학:43점 총점:133점 평균:33.25점 -------------------------------------- -------------------------------------- name2학생의 정보 -------------------------------------- 번호:34번 이름:name2 국어:56점 영어:54점 수학:77점 총점:187점 평균:46.75점 -------------------------------------- -------------------------------------- name3학생의 정보 -------------------------------------- 번호:34번 이름:name3 국어:56점 영어:77점 수학:77점 총점:210점 평균:52.50점 -------------------------------------- -------------------------------------- name4학생의 정보 -------------------------------------- 번호:4번 이름:name4 국어:66점 영어:78점 수학:77점 총점:221점 평균:55.25점 -------------------------------------- -------------------------------------- name5학생의 정보 -------------------------------------- 번호:5번 이름:name5 국어:66점 영어:77점 수학:66점 총점:209점 평균:52.25점 -------------------------------------- 1.입력 2.출력 3.종료 > 3 사용해 주셔서 감사합니다.

from http://helloenavy.tistory.com/76 by ccl(A) rewrite - 2021-10-21 15:01:39