728x90
문제
세 과목의 점수를 입력받아 합계, 평균, 평균의 성취도, 취약과목을 출력하는 프로그램을 작성하라.
실행 결과 예시
점수를 입력하세요 : 100
점수를 입력하세요 : 80
점수를 입력하세요 : 96
====== 성적 처리 결과 ======
합계 : 276 평균 : 92
성취도 : A
====== 노력이 가장 필요한 교과 ======
과목 : 영어 점수 : 80
소스 코드
import java.util.Scanner;
public class Score123 {
public static void main(String args[]) {
int score1=keyInput(); // 세 과목 점수 입력받음
int score2=keyInput();
int score3=keyInput();
System.out.println("====== 성적 처리 결과 ======");
getResult1(score1, score2, score3); // 합계, 평균, 평균의 성취도 출력 메소드
System.out.println("====== 노력이 가장 필요한 교과 ======");
getResult2(score1, score2, score3); //3등과목 출력하는 메소드
}
static int keyInput() { // 점수 입력받는 메소드
Scanner sc=new Scanner(System.in);
System.out.print("점수를 입력하세요 : ");
int score=sc.nextInt();
return score; //score 값을 초기화함
}
static void getResult1(int score1, int score2, int score3) { // 합계, 평균, 평균 성취도 구하는 메소드
int total=score1+score2+score3; // 세 과목 합계
int avg=total/3; // 세 과목 평균
System.out.println("합계 : "+total+" 평균 : "+avg);
System.out.print("성취도 : ");
switch(avg/10) {
case 10:
case 9:
System.out.println("A");
break;
case 8:
System.out.println("B");
break;
case 7:
System.out.println("C");
break;
default:
System.out.println("D");
break;
}
}
static void getResult2(int score1, int score2, int score3) { // 3등과목(취약과목)을 출력하는 메소드
if(score1<score2) {
if(score1<score3)
System.out.println("과목 : 국어 점수 : "+score1);
else
System.out.println("과목 : 수학 점수 : "+score3);
}
else {
if(score3>score2)
System.out.println("과목 : 영어 점수 : "+score2);
else
System.out.println("과목 : 수학 점수 : "+score3);
}
}
}
소스코드 풀이
static int keyInput() { // 점수 입력받는 메소드
Scanner sc=new Scanner(System.in);
System.out.print("점수를 입력하세요 : ");
int score=sc.nextInt();
return score; // score 값을 초기화함
keyInput() 메소드를 사용해서 과목의 점수를 입력받는 메소드를 만든다.
int score1=keyInput(); // 세 과목 점수 입력받음
int score2=keyInput();
int score3=keyInput();
keyInput() 메소드를 int score 1,2,3에 대입해서 세 과목의 점수를 입력받는다.
static void getResult1(int score1, int score2, int score3) { // 합계, 평균, 평균 성취도 구하는 메소드
int total=score1+score2+score3; // 세 과목 합계
int avg=total/3; // 세 과목 평균
System.out.println("합계 : "+total+" 평균 : "+avg);
System.out.print("성취도 : ");
switch(avg/10) {
case 10:
case 9:
System.out.println("A");
break;
case 8:
System.out.println("B");
break;
case 7:
System.out.println("C");
break;
default:
System.out.println("D");
break;
}
}
getResult1() 메소드를 만들어서 세 과목의 합계와 평균을 구하고 평균에 따른 성취도를 출력한다.
실행 결과
점수를 입력하세요 : 82
점수를 입력하세요 : 57
점수를 입력하세요 : 89
====== 성적 처리 결과 ======
합계 : 228 평균 : 76
성취도 : C
====== 노력이 가장 필요한 교과 ======
과목 : 영어 점수 : 57
728x90
'Java > Scanner' 카테고리의 다른 글
[Java] 메소드를 이용해서 세 과목을 입력받은 후 합계, 평균, 평균의 성취도, 취약 과목 출력하기 (기본편) (0) | 2022.08.28 |
---|