백준 10952번 - A+B -5 with Python
Q. 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력> 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 입력의 마지막에는 0 두 개가 들어온다.
출력> 각 테스트 케이스마다 A+B를 출력한다.
https://www.acmicpc.net/problem/10952
10952번: A+B - 5
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
이제 새로운 문법 While문!
While문은 for문과 동일한 반복문이다.
하지만 쓰이는 상황이 다르다.
for문은 범위가 주어졌을 때, 즉 반복할 횟수를 알고 있을 때 사용하는 것이었다면,
while문은 특정한 조건이 주어졌을 때 반복을 진행한다.
그래서 한가지 주의해주어야 할 점이 있다면
for문은 따로 이 반복문을 멈춰!라는 말이 없어도 특정 횟수를 채우게 되면 반복문이 끝이나지만
while문은 멈춰달라는 말을 해주어야 한다. 즉, 조건을 계속 만족하게 된다면 while문도 계속 돌아간다는 소리다.
그래서 while문이 마지막엔 반복을 멈출 수 있도록 특별한 조치를 해주어야 한다.
while문의 형태
while <조건문> :
<실행할 문장1>
<실행할 문장2>
<실행할 문장3>
...
while문은 조건문이 참인 동안에 while문 아래의 문장이 반복해서 수행된다.
만약 어떤 특정한 상황에서 while문을 멈추게 하고 싶다면?
while <조건문> :
<실행할 문장1>
<실행할 문장2>
<실행할 문장3>
if <특정한 상황>:
break
if문을 사용해 특정한 상황이라면 실행문을 멈춰라!라고 표현해줄 수 있겠다.
break문은 실행하고 있는 것들을 중지시키라는 명령어이다.
그럼 문제상황을 다시 보자.
Q. 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.
입력> 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 각 줄에 A와 B가 주어진다. (0 < A, B < 10) 입력의 마지막에는 0 두 개가 들어온다.
출력> 각 테스트 케이스마다 A+B를 출력한다.
A와 B가 0보다 크고 10보다 작을 때 A + B를 출력하고,
마지막에 0 0을 입력받으면 반복문을 멈춘다.
즉 <조건문>에 0<A<10 and 0<B<10 을 입력하고 특정한 상황에 A==0 and B==0을 넣어주면 되겠다.
반복할 행위들은 A+B를 출력하게 하고, 다시 A,B를 다른 인자들로 받아야하므로
print(A+B)
A,B=map(int,input())
을 넣어주면 된다.
그럼 코드로 작성해보자.
<코드>
A, B = map(int,input().split())
while A>0 and B>0:
print(A+B)
A,B = map(int, input().split())
if A==0 and B==0:
break
A+B가 잘 출력되는 것을 볼 수 있고, 0 0을 입력했더니 반복문이 잘 끝난 것을 볼 수 있다.
'우당탕탕 파이썬 with 하루하나 알고리즘' 카테고리의 다른 글
백준 1110 파이썬 - 더하기 사이클 (0) | 2022.03.25 |
---|---|
백준 10951 파이썬 - 끝이라는 말 없이 끝내기.. (feat. EOF) (0) | 2022.03.24 |
백준 2439 파이썬 - 거꾸로 별 찍기! 근데 공백을 곁들인.. (0) | 2022.03.22 |
백준 2438 파이썬 - 별을 하나씩 추가하면서 찍기 🌟 (2) | 2022.03.22 |
백준 2742 파이썬 - 거꾸로 출력하기 (0) | 2022.03.21 |