Solved.ac - Python/Bronze V
[파이썬/Python] 백준 2754번 학점계산
ImJay
2022. 9. 14. 14:30
반응형
[파이썬/Python] 백준 2754번 학점계산
2754번: 학점계산
어떤 사람의 C언어 성적이 주어졌을 때, 평점은 몇 점인지 출력하는 프로그램을 작성하시오. A+: 4.3, A0: 4.0, A-: 3.7 B+: 3.3, B0: 3.0, B-: 2.7 C+: 2.3, C0: 2.0, C-: 1.7 D+: 1.3, D0: 1.0, D-: 0.7 F: 0.0
www.acmicpc.net
문제
어떤 사람의 C언어 성적이 주어졌을 때, 평점은 몇 점인지 출력하는 프로그램을 작성하시오.
A+: 4.3, A0: 4.0, A-: 3.7
B+: 3.3, B0: 3.0, B-: 2.7
C+: 2.3, C0: 2.0, C-: 1.7
D+: 1.3, D0: 1.0, D-: 0.7
F: 0.0
코드
score = input()
if score == "A+": print(4.3)
elif score == "A0": print(4.0)
elif score == "A-": print(3.7)
elif score == "B+": print(3.3)
elif score == "B0": print(3.0)
elif score == "B-": print(2.7)
elif score == "C+": print(2.3)
elif score == "C0": print(2.0)
elif score == "C-": print(1.7)
elif score == "D+": print(1.3)
elif score == "D0": print(1.0)
elif score == "D-": print(0.7)
elif score == "F": print(0.0)
풀이
1. 성적을 입력받습니다.
score = input()
2. if, elif 문을 통해 입력받은 성적에 따른 평점을 출력합니다.
if score == "A+": print(4.3)
elif score == "A0": print(4.0)
elif score == "A-": print(3.7)
elif score == "B+": print(3.3)
elif score == "B0": print(3.0)
elif score == "B-": print(2.7)
elif score == "C+": print(2.3)
elif score == "C0": print(2.0)
elif score == "C-": print(1.7)
elif score == "D+": print(1.3)
elif score == "D0": print(1.0)
elif score == "D-": print(0.7)
elif score == "F": print(0.0)
느낀 점
아무리 생각해도 하드코딩 느낌이라 찾아 보았지만 단순 작업이 맞았던거 같다.
딕셔너리를 사용하면 더 깔끔하게 작성할 수 있다는 것 정도
파이썬에는 switch 문이 없다는 사실도 처음 알게 되었다.
오타에 항상 주의하자..

반응형