김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음
코드 리뷰 부탁드립니다!
package array;
import java.util.Scanner;
public class Ex7 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int student_count = 4;
String[] subject = {"국어", "영어", "수학"};
int subject_count = subject.length;
int total_index = subject.length;
int[][] point = new int[student_count][subject_count+1];
for (int i = 0; i < point.length; i++) {
System.out.println((i+1) + "번 학생의 성적을 입력하세요:");
for (int z = 0; z < subject_count; z++){
System.out.print(subject[z] + " 점수: ");
point[i][z] = scanner.nextInt();
point[i][subject_count] += point[i][z];
}
}
for (int i = 0; i < point.length; i++){
System.out.println((i+1) + "번 학생의 총점:" + point[i][total_index ] +", 평균: " + ((double) point[i][total_index ]/subject_count));
}
}
}안녕하세요. 배열 문제 풀이 2, 2차원 배열1 문제에서선생님과 다른 풀이 방법으로 접근해보았습니다.기존 4x3 대신 칼럼을 하나 더 추가해 마지막 칼럼을 총점수를 저장하는 방법을 사용하였습니다.의도는 이러합니다.- 필요에 따라 학생수와 과목수를 추가함에 따라 for문을 변경하지 않아도 되도록 하고싶었습니다.- 칼럼을 하나 더 추가해 마지막 칼럼에 총점을 저장하는 방식을 사용하고 싶었습니다.- 확장성과 유지 보수 측면에서 좀 더 간편했으면 싶었습니다.여기서 발생한 문제점은 다음과 같습니다.- 개인적으로 느끼기엔 가독성이 선생님의 코드보다 떨어져보인다.- 가독성을 높이기 위해 선언한 변수가 비효율적이다. (int total_index = subject.length;)total_score[] 배열을 하나 더 만들어서 저장하는게 더 나을까요?제 아이디어와 코드가 어떤지 리뷰를 들어보고 싶습니다!