Python/Algorithm

[Python_Algorithm]양수만 입력 받기(자료구조와 함께 배우는 알고리즘 입문)

bangle0621 2021. 1. 10. 21:57

사용자에게서 값을 입력받을 때 양수만을 입력받고 싶다면 어떻게 해야 될지 보자. 

# 1부터 n까지 정수의 합 구하기 (n은 양수만 입력받음)

print('1부터 n까지 정수의 합을 구합니다.')

while True:
    n = int(input('n값 입력하세요.:'))
    if n>0:
        break #n이 0보다 커질 때까지 반복
        
sum = 0
i = 1

for i in range(1,n+1):
    sum += i # sum에 i를 더함
    i += 1 # i에 1을 더함
    
print(f'1부터 {n}까지 정수의 합은 {sum}입니다.')

위에서 보듯이 0이나 음수값이 입력되면 다시 입력창이 나와 양수의 입력값을 받을때 까지 반복한다는 것을 볼 수 있다.

 

while 문에서 보면 값으로 True 를 지정해서 주고있음을 볼 수 있다. 

이는 개발자가 의도적으로 해당 부분을 무한 루프 되도록 만든것임을 알 수있다.

반복문 안에 일정 조건에 맞는다면 그 구문이 끝나도록 break문을 걸어주었다. 

 

다음 두 순서도는 같은 기능을 하지만 B 는 사전 판단 반복과 구별하기가 어려워 A를 더 많이 사용한다.