본문 바로가기
ⓒⓞⓓⓘⓝⓖⓣⓔⓢⓣ/ⓟⓨⓣⓗⓞⓝ

[python] 단계별로 풀어보기 - 4단계

by heaven00 2021. 4. 26.
728x90

 

 

 

 

사실 코딩할때 while문을 굉장히 쓰지 않는 편이고, 

while의 조건문을 true로 둔 뒤, 코딩을 하는 경우는 정말 적었다.

그래서 생소했지만 아직 4단계여서 문제가 조금은 단순해서 해결가능했다.

앞으로 다양한 방식으로 문제를 풀어봐야할 것 같다.

 


 

 

4-1) 백준 10952번: A+B-5

 

while True:
    a,b = map(int, input().split())	//a,b를 한줄에 각각 입력받기
    if a == 0 and b==0:			//a,b 모두 0이면 반복문 중단
        break	
    else:				//아니라면 a+b값 출력
        print(a+b)

 

 

 

 

 

4-2) 백준 10951: A+B-4

 

while True:
    try:
        a,b = map(int, input().split())
        print(a+b)

    except:
        break

 

아무리 문제를 읽어봐도 위의 문제랑 다를게 없는 것 같고 뭘 원하는지 모르겠어서 찾아보니 except문을 써라는 의미인 것 같다..!

 

 

 

 

 

4-3) 백준 1110: 더하기 사이클

 

count = 0
tmp = imp = int(input())

while True:
    a = tmp % 10
    b = tmp // 10
    res = a + b
    count = count +1
    tmp = int(str(tmp % 10) + str(res % 10))

    if tmp == imp:
        break
print(count)

 

수 하나를 입력받아, 그 수에 대해 나누기 한 몫과 나머지를 얻어 각각을 a, b에 저장해준다. 그 후, 두 수 값을 res에 저장해주고 count값을 하나 올려준다. 다음으로 tmp값에 tmp의 나머지 값과 res의 나머지값을 각각 문자형으로 바꾸어 연결시켜주고 그 수를 int형으로 전환시켜준다. 만약, tmp와 imp가 같으면 반복문 탈출한다.
문제에서 시키는 순서대로 따라가면 해결가능했다.

 

 

 

 

 

728x90

댓글