PONI's 좋은 개발자

[백준 C++] 9498번 : 시험 성적 본문

코딩테스트/C++

[백준 C++] 9498번 : 시험 성적

PONI 2023. 6. 1. 10:36
반응형

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

 

9498번: 시험 성적

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

www.acmicpc.net

 

📋 문제

 

📖 설명 

정수인 시험점수를 입력받아 점수별 해당하는 등급을 출력하는 문제입니다.

조건문 if -else if -else 를 사용하여 문제를 풀겠습니다.

 

 

📌풀이

방법 1)

#include <bits/stdc++.h>
using namespace std;
int score;
int main() {
	cin >> score;
	if(score <= 100 && score >= 90){
		cout << "A" << '\n';
	} 
	else if(score < 90 && score >= 80){
		cout << "B" << '\n';
	} 
	else if(score < 80 && score >= 70){
		cout << "C" << '\n';
	} 
	else if(score < 70 && score >= 60){
		cout << "D" << '\n';
	} 
	else {
		cout << "F" << '\n';
	}
    return 0;
}

논리 연산자 AND 조건으로 &&을 사용하여 점수를 구분했습니다.

 

 

방법 2)

#include <bits/stdc++.h>
using namespace std;
int score;
int main() {
	cin >> score;
	if(score <= 100 && score >= 90) { // 100점 이하 90점 이상 
		cout << "A" << '\n';
	}
	else if(score >= 80) { // 90점 이상은 위에서 걸러지므로 80점 이상 
		cout << "B" << '\n';
	}
	else if(score >= 70) { // 70점 이상
		cout << "C" << '\n';
	}
	else if(score >= 60) { // 60점 이상
		cout << "D" << '\n';
	}
	else { // 나머지 
		cout << "F" << '\n';
	}
    return 0;
}

else if 를 사용하면 if 중 참이지 않은 내용에 한해 다시한번 조건을 필터링 하니 코드를 더욱 간결하게 할 수 있었고, 조건이 복잡할 수록 필터링을 미리 해두어 시간도 줄일 수 있는 효과를 가질 수 있습니다.

 

📍 배울 내용

if - else if - else
if(조건식 1){
	[실행문 1]	// 조건식 1이 참일경우
} 
else if(조건식 2){
	[실행문 2]	// 조건식 1이 거짓이면서 조건식 2가 참일경우
} 
else {
	[실행문 3]	// 위 조건식을 모두 만족하지 못했을 경우
}

 

 

<개선사항은 언제든지 댓글로 부탁드립니다!>

반응형

'코딩테스트 > C++' 카테고리의 다른 글

[백준 C++] 14681번 : 사분면 고르기  (0) 2023.06.08
[백준 C++] 2588번 : 곱셈  (0) 2023.05.31
[백준 C++] 1008번 : A/B  (0) 2023.05.31
Comments