JAVA - 백준 [BAEK JOON]/조건문

[백준] 9498번 : 시험 성적 - JAVA (자바)

_ys2 2024. 4. 20. 20:02
728x90
반응형

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

 

9498번: 시험 성적

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

www.acmicpc.net


문제

출처 - 백준 알고리즘


문제 풀이

import java.util.Scanner;

public class Main {    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);    
        int a = sc.nextInt();   

        if (a >= 90 && a <= 100) {  
            System.out.println("A");    
        } else if (a >= 80 && a <= 89) {    
            System.out.println("B");    
        } else if (a >= 70 && a <= 79) {    
            System.out.println("C");    
        } else if (a >= 60 && a <= 69) {    
            System.out.println("D");    
        } else {     
            System.out.println("F");    
        }
        sc.close(); 
    }
}

코드 풀이

Scanner sc = new Scanner(System.in);	// 사용자를 입력을 받기 위해 Scanner 객체를 생성한다.
사용자를 입력을 받기 위해 Scanner 객체를 생성한다.

 

int a = sc.nextInt();   // 사용자로부터 정수를 입력받아 변수 a에 저장
사용자로부터 정수를 입력받아 변수 a에 저장한다.

 

if (a >= 90 && a <= 100) {  // 만약 입력받은 점수가 90 이상 100 이하라면
    System.out.println("A");    // "A"를 출력
} else if (a >= 80 && a <= 89) {    // 입력받은 점수가 80 이상 89 이하라면
    System.out.println("B");    // "B"를 출력
} else if (a >= 70 && a <= 79) {    // 입력받은 점수가 70 이상 79 이하라면
    System.out.println("C");    // "C"를 출력
} else if (a >= 60 && a <= 69) {    // 입력받은 점수가 60 이상 69 이하라면
    System.out.println("D");    // "D"를 출력
} else {     // 그 외, 입력받은 점수가 0부터 59까지의 범위에 속하는 경우
    System.out.println("F");    // "F"를 출력
}
입력받은 점수에 따라 해당하는 등급을 출력합니다. 범위에 따라 "A", "B", "C", "D", "F", 등급을 출력한다.

 

sc.close(); // 시스템 자원 누수를 방지하기 위해 Scanner 개체를 닫는다.
입력이 끝났으므로 Scanner를 닫아서 자원을 해제합니다.

피드백 & 정리

찾아보니깐 else 블록에서 사용할 필요가 없다고 하고, 중괄호는 단일 문장을 감싸는 데 사용한다고 한다.
더 개선할 수 있는 코드를 생각해 보니 switch - case 문으로 사용해서 코드를 더 간편하게 만들 수 있을 거 같다. 또한, 등급과 점수의 관계를 배열로 관리해서 코드를 더 효율적으로 만들 수 있다고도 한다.

 

 

아직 나는 배울게 엄청 더 많지만 나 혼자 뭔가 많이 뒤처지고 늦어지는 느낌적이 아닌 느낌이닼ㅋㅋ

 

깃 허브 코드

https://github.com/CHUNYOUNGSANG/Algorithm_Judge/blob/main/boj/java/step/b_02_conditional_statement/p_9498.java

 

Algorithm_Judge/boj/java/step/b_02_conditional_statement/p_9498.java at main · CHUNYOUNGSANG/Algorithm_Judge

Contribute to CHUNYOUNGSANG/Algorithm_Judge development by creating an account on GitHub.

github.com

 

반응형