public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String student[][] = { // 국어 영어 수학
{ "홍길동", "1999-01-23", "100", "90", "75" },
{ "성춘향", "2010-07-04", "90", "100", "95" },
{ "일지매", "2001-03-05", "85", "95", "100" },
};
// 각 학생들의 국어, 영어, 수학을 합친 총점은? 개개인의 총점
int sum[] = new int[student.length];
int temp; // 1명분에 대한 성적의 합계
for (int j = 0; j < student.length; j++) {
temp = 0;
for (int k = 2; k < student[j].length; k++) { // 1명당 성적의 합계 루프문
temp = temp + Integer.parseInt(student[j][k]);
}
sum[j] = temp;
}
for (int i = 0; i < sum.length; i++) {
System.out.print(student[i][0] + "의 총점:" + sum[i] + "\n");
}
// 학생들의 국어점수의 총점은?
int langSum = 0;
for (int i = 0; i < student.length; i++) {
langSum = langSum + Integer.parseInt(student[i][2]);
}
System.out.println("국어의 합계점수:" + langSum);
// 영어 점수의 최고점수는 몇 점인가?
int max = Integer.parseInt(student[0][3]);
for (int i = 1; i < student.length; i++) {
int eng = Integer.parseInt(student[i][3]);
if(eng > max) {
max = eng;
}
}
System.out.println("영어의 최고점수:" + max);
// 수학 점수의 최저점수는 몇 점인가?
int min = Integer.parseInt(student[0][4]);
for (int i = 1; i < student.length; i++) {
int math = Integer.parseInt(student[i][4]);
if(math < min) {
min = math;
}
}
System.out.println("수학의 최저점수:" + min);
// 학급에서 1등은 누구인가? 이름을 출력하라.
int top = sum[0];
int index = 0;
for (int i = 0; i < sum.length; i++) {
if(sum[i] > top) {
top = sum[i];
index = i;
}
}
System.out.println("클래스의 1등은 " + student[index][0] + "님입니다");
}
메소드를 통한 값 출력
public static void main(String[] args) {
// [ 1번 문제 ]
// 학생들의 정보를 2차원 배열에 입력을 받는다.
// (이름, 생년월일, 국어, 영어, 수학)
String student[][];
student = inf();
// [ 2번 문제 ]
// 각 학생들의 국어, 영어, 수학을 합친 총점은? 개개인의 총점
total(student);
// [ 3번 문제 ]
// 학생들의 국어점수의 총점은?
int a = total2(student);
System.out.println("국어 총점 : " + a);
// [ 4번 문제 ]
// 영어 점수의 최고점수는 몇 점인가?
total3(student);
// [ 5번 문제 ]
// 수학점수의 최저점수는 몇 점인가?
total4(student);
// [ 6번 문제 ]
// 학급에서 1등은 누구인가? 이름을 출력하라.
name(student);
}
// [ 1번 문제 ]
// 학생들의 정보를 2차원 배열에 입력을 받는다.
// (이름, 생년월일, 국어, 영어, 수학)
static String[][] inf() {
Scanner scan = new Scanner(System.in);
System.out.println("이름, 생년월일, 국어, 영어, 수학을 입력하세요");
System.out.print("학생 수를 입력하세요 : ");
int n = scan.nextInt(); // n == 학생수 == 열의 개수
String student[][] = new String[n][5]; //
for (int i = 0; i < n; i++) {
for (int j = 0; j < 5; j++) {
System.out.print(i + "행" + j + "열 입력 : ");
student[i][j] = scan.next();
}
System.out.println();
}
System.out.println("이름\t생년월일 국어\t영어\t수학\t");
for (int i = 0; i < student.length; i++) {
for (int j = 0; j < 5; j++) {
System.out.print(student[i][j] + "\t");
}
System.out.println();
}
return student;
}
// [ 2번 문제 ]
// 각 학생들의 국어, 영어, 수학을 합친 총점은? 개개인의 총점
static int total(String[][] student) {
int total = 0;
for (int i = 0; i < student.length; i++) {
total = Integer.parseInt(student[i][2]) + Integer.parseInt(student[i][3]) + Integer.parseInt(student[i][4]);
System.out.println(student[i][0] + "의 총점 : " + total);
}
return total;
}
// [ 3번 문제 ]
// 학생들의 국어점수의 총점은?
static int total2(String[][] student) {
int total2 = 0;
for (int i = 0; i < student.length; i++) {
total2 += Integer.parseInt(student[i][2]);
}
return total2;
}
// [ 4번 문제 ]
// 영어 점수의 최고점수는 몇 점인가?
static void total3(String[][] student) {
int total3 = 0;
int max = 0;
for (int i = 0; i < student.length; i++) {
int a = Integer.parseInt(student[i][3]);
if(a > max) {
max = a;
}
}
System.out.println("영어 점수의 최고점수는 : " + max);
}
// [ 5번 문제 ]
// 수학점수의 최저점수는 몇 점인가?
static int total4(String student[][]) {
int total4 = 0;
int min = Integer.parseInt(student[0][4]);
for (int i = 1; i < student.length; i++) { // i에 1을 넣는 이유는 0열과 1열을 비교하기 위해(0값을 넣으면 0열과 0열을 비교하게 됨)
int a = Integer.parseInt(student[i][4]);
if(a <= min) {
min = a;
}
}
System.out.println("수학 점수의 최저점은 : " + min);
return total4;
}
// [ 6번 문제 ]
// 학급에서 1등은 누구인가? 이름을 출력하라.
static void name(String student[][]) {
String name = " ";
int sum = 0;
int a = 0 ;
for (int i = 0; i < student.length; i++) {
sum = 0;
for (int j = 2; j < 5; j++) {
sum += Integer.parseInt(student[i][j]);
}
if(a <= sum) {
a = sum; // sum은 for(j)에서 초기화가 되기때문에 a변수를 통해 sum값을 저장해둠
name = student[i][0];
}
}
System.out.println("학급에서 1등은 : " + name);
}
'Java' 카테고리의 다른 글
[Java] Inheritance(상속)3 (0) | 2022.05.17 |
---|---|
[Java] Constructor(생성자) (0) | 2022.05.17 |
[Java] 숫자 정렬 (0) | 2022.05.17 |
[Java] 학생들의 평균 점수를 구하라 (0) | 2022.05.16 |
[Java] Interface2 (0) | 2022.05.16 |
댓글