간단한 예외처리 문제이다:
import sys
T = int(sys.stdin.readline())
for i in range(T):
A, B = map(str, sys.stdin.readline().split())
try:
if int(A)%int(B) == 0:
print(int(int(A)/int(B)))
else:
print(int(A)/int(B))
except ZeroDivisionError:
print('Error Code: integer division or modulo by zero')
except ValueError:
if not A.isnumeric() and not B.isnumeric():
print('Error Code: invalid literal for int() with base 10: ' + "'" + A + "'" + "'" + B + "'")
break
if not A.isnumeric():
print('Error Code: invalid literal for int() with base 10: ' + "'" + A + "'")
if not B.isnumeric():
print('Error Code: invalid literal for int() with base 10: ' + "'" + B + "'")
단순히 0으로 나누었을때, 그리고 분자 분모가 숫자가 아닌 다른 숫자가 나왔을 때를 나누어서 계산을 하고 원하는 대로 출력을 해주면 된다.
'알고리즘 테스트 > Hackerrank 문제풀이 및 해설' 카테고리의 다른 글
<Hackerrank 문제풀이: 파이썬> Collections.OrderedDict() (0) | 2020.12.02 |
---|---|
<Hackerrank 문제풀이: 파이썬> Collections.namedtuple() (0) | 2020.12.01 |
<Hackerrank 문제풀이: 파이썬> Calendar Module (0) | 2020.11.29 |
<Hackerrank 문제풀이: 파이썬> DefaultDict Tutorial (0) | 2020.11.28 |
<Hackerrank 문제풀이: 파이썬> Introduction to Sets (0) | 2020.11.27 |