백준 알고리즘/조건문

백준 9498번 :: 시험 성적

Sun720 2022. 5. 16. 23:19

▶ 문제

https://www.acmicpc.net/problem/9498

 

9498번: 시험 성적

시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오.

www.acmicpc.net

 설명

성적에 등급을 매기는 문제이다.

if문, switch문으로 해결할 수 있다.

if가 많아지는 경우 (조건이 많은 경우) switch 문이 가독성 면에서 좋다.

그래서 이 문제에서 switch 문을 사용해보았다.

문제 풀이

🌱 풀이1. switch 문 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {

	public static void main(String[] args) throws NumberFormatException, IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

		int score = Integer.parseInt(br.readLine());
		br.close();
		
		char grade = ' ';
		
		switch (score/10) {

		case 10:
		case 9:
			grade = 'A';
			break;
		case 8:
			grade = 'B';
			break;
		case 7:
			grade = 'C';
			break;
		case 6:
			grade = 'D';
			break;
		default:
			grade = 'F';
		}
		System.out.println(grade);
	}

}

switch  조건으로 score 가 아닌 score/10 을 넣어야 한다.

score 만 넣었을 경우 case가 늘어나기 때문이다.

 

case 를 작성할 땐 break 를 꼭 입력해 주어야 다음 case로 넘어가지 않고 switch 문에서 빠져나올 수 있다.

대신 default의 경우엔 break를 써주지 않아도 된다.

Log

728x90
반응형