강의노트 while문

강의노트 • 조회수 1311 • 댓글 0 • 수정 7개월 전  
  • 반복문
  • 조건문과 반복문

while문

형식

var = 시작값
while var < 끝값:
    실행문(반복되는 부분)
    var = var + 증가값
    
while 조건식:
   실행문

while문은 조건식이 참인 동안 실행문을 반복해서 실행하며, 조건식이 거짓이면 while문을 빠져나온다.

조건식 뒤에는 반드시 콜론(:)을 붙여야 한다. 또한 실행문은 공백 또는 탭으로 들여쓰기를 해야 한다.

들여쓰기는 실행문들이 while문에 속해있는 것을 나타낸다. 이와같이 들여쓰기는 코드의 가독성을 높여준다.

1부터 5까지 출력한다.

i = 1
while i < 6:
    print(i)
    i = i + 1

for문과 비교

i = 1
while i < 6:
    print(i)
    i = i + 1
    
for i in range(1,6):
    print(i)

반복횟수가 정해져 있는 경우에는 for문을 사용하는 것이 간단하다. 하지만, 반복횟수가 정해지지 않았을 때는 while문이 유용하다.

예를 들어, 어떤 작업을 수행하다가 오차가 0.01 이하가 되면 멈추고 싶은 경우에는 while문을 사용하는 것이 좋다.

이렇게 되면, 작업이 끝날 때까지 반복하다가 오차가 충분히 작아지면 반복을 멈출 수 있다.

break문

반복 중인 루프를 빠져 나간다.

i = 1
while i <20:
    while j < 20:
        if j > 7 :
            print('i:{}  j:{}'.format(i, j))
            break
        j = j + 1    
    print('j loop')
    if i > 15:
        break
    i = i + 1    

continue문

continue 다음 문장을 실행하지 않고 반복문 시작점으로 돌아가 다음 반복을 진행한다.

L = [2,3,5,7,11,12]
while i < 10:
    if i %4 ==1: continue
    if i ==7 : break
    print(i)
    i = i + 1

예1) while문을 활용하여 구구단을 만든어라.

해1)
2단 출력하는 프로그램은 아래와 같다.

j = 1
while j < 10:
     print(f'2 * {j} = {j*2:02d}')

구구단 출력 2단부터 9단까지 변하는 수 -> 변수 i 각 단의 1부터 9까지 변하는 수 -> 변수 j

j = 1
while j < 10:
     i = 2
    while i < 10:
        print(f'{i} * {j} = {i*j:02d}',end=" | ")
        i = i + 1
    print('')
    j = j + 1

예2) 같은 숫자가 나올 때까지 주사위 6개를 동시에 무한 반복해서 던진다. 같은 숫자가 나올 때까지 몇 번 던졌는지, 1부터 6까지 연속된 숫자는 몇 번 나왔는지 출력해라.

이전 글
다음 글
댓글
댓글로 소통하세요.