백준 10951번 - A+B -4 with Python
Q. 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력> 입력은 여러 개의 테스트 케이스로 이루어져 있다.
각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10)
출력> 각 테스트 케이스마다 A+B를 출력한다.
https://www.acmicpc.net/problem/10951
10951번: A+B - 4
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
어제 올렸던 포스팅과 매우 흡사한 문제다!
2022.03.23 - [우당탕탕 파이썬 with 하루하나 알고리즘] - 백준 10952 파이썬 - While문으로도 A + B를 출력할 수 있다고?!
백준 10952 파이썬 - While문으로도 A + B를 출력할 수 있다고?!
백준 10952번 - A+B -5 with Python Q. 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력> 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루
happyhyxndy.tistory.com
하지만 조금 다른 점이 있다.
어제의 문제에서는 0 0을 입력을 받은 후에야 while문을 종료시킬 수 있었는데,
이번 문제에서는 딱히 별 다른 말 없이 while문을 종료시켜야한다.
읭...? 이게 무슨말이야,,,
분명 while문은 반복횟수를 모르고, 특정한 조건이 주어져있을 때 반복이 실행가능하도록 하는 구문이었는데
조건이 없는데도 while문을 멈출 수 있다고..???
그렇다! 바로 EOF를 이용하면 말이다.
EOF (End Of File)
EOF는 말 그대로 파일의 끝을 나타낸다. 이것은 사용자가 더이상 데이터를 읽을 수 없는 프로그램의 지점이다.
파일은 항상 그 끝을 알 수 있는데, 이 끝에 도달하게 되면 빈문자열이 출력으로 반환된다.
우리는 EOF를 사용하기 위해 try와 except를 사용할 것이다.
계속 진행되는 반복문, 즉 조건이 True인 반복문을 만들고, 이 안에서 try와 except를 통해 예외처리를 진행한다.
입력이 있을 땐 try문에 있는 코드들을 실행시키고,
입력이 없을 때, 즉 EOFError가 발생할 때는 break를 통해 while문의 반복을 멈추게 한다.
이를 코드로 고쳐써보면 다음과 같다.
A,B=map(int, input().split())
while True:
try:
print(A+B)
A,B=map(int, input().split())
except EOFError: #EOFError를 써주지 않아도 무방하다.
break
'우당탕탕 파이썬 with 하루하나 알고리즘' 카테고리의 다른 글
백준 10818 파이썬 - 목록에서 최솟값, 최댓값 찾아내기!🔍 (0) | 2022.03.26 |
---|---|
백준 1110 파이썬 - 더하기 사이클 (0) | 2022.03.25 |
백준 10952 파이썬 - While문으로도 A + B를 출력할 수 있다고?! (0) | 2022.03.23 |
백준 2439 파이썬 - 거꾸로 별 찍기! 근데 공백을 곁들인.. (0) | 2022.03.22 |
백준 2438 파이썬 - 별을 하나씩 추가하면서 찍기 🌟 (2) | 2022.03.22 |