Java/실습

[Java] 점수에 따라서 학점 부여하기(switch - case 문)

Puft 2024. 11. 27. 10:34

이번 시간에는 점수에 따라서

 

학점을 부여하는 프로그램을 만들어보려고합니다.

 

90점이상이면 'A'

 

80~90점이면 'B'

 

70~80점이면 'C'

 

60~70점이면 'D'

 

60점 미만이면 'F'를 출력하도록 하겠습니다.

 

 

 

import java.util.Scanner;

public class CMain2 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

System.out.println("점수를 입력하세요:");

int score = sc.nextInt();

switch (score/ 10) {

case 9: case 10:

System.out.println("A입니다.");

break;

case 8:

System.out.println("B입니다.");

break;

case 7:

System.out.println("C입니다.");

break;

case 6:

System.out.println("D입니다.");

break;

 

default:

System.out.println("F입니다.");

break;

}

}

}

 

case의 값에는 조건식이 들어올 수 없기 떄문에

 

switch변수안에 변수 또는 식

 

들어올 수 있다는 점을 이용해야합니다.

 

switch (score/ 10) 이런 식으로

 

score을 10으로 나눠주면

 

점수의 앞자리 수에 따라서

 

100점은 10, 90 점은 9... 이런 식으로 나올겁니다.

 

이제 점수에 맞게 실행문을 적어주기만 하면 됩니다.

 

case 9: case 10:

System.out.println("A입니다.");

break;

case 8:

System.out.println("B입니다.");

break;

case 7:

System.out.println("C입니다.");

break;

case 6:

System.out.println("D입니다.");

break;

 

 

이번 실습의 포인트는

 

switch 괄호 안에 변수 또는 식이 

 

올 수 있다는 점입니다.

 

감사합니다!