04. 반복문
제어문중에 하나인 반복문에 대해서 알아보겠습니다 :)
Last updated
제어문중에 하나인 반복문에 대해서 알아보겠습니다 :)
Last updated
이번 시간에는 반복문을 살펴보겠습니다. 반복문 말그대로 코드를 반복해주는 친구들입니다. 반복문은 아래와 같이 3가지의 종류가 있습니다.
for
while
do_while
continue (보조)
일정 횟수만큼 조건에 따라 반복 실행하여야 할 때 사용합니다.
간단한 문제 1 - 10까지 출력하시오
반복문을 쓰지 않고 위의 문제를 해결하려 한다면 코드는 아래와 같을 거에요
10이면 console.log 가 10개 100 이면 100개의 코드가 반복됩니다.
반복문을 이용한다면 간단하게 해결됩니다. 위 코드의 실행 순서는 아래와 같습니다.
초기값은 1입니다.
조건을 비교합니다. 1 <= 10 은 true 이기 때문에 console.log(i) 를 실행합니다.
증감식으로 이동합니다. i = i + 1 가 실행되고 1이 증가하여 i는 2가 됩니다.
1 ~ 3번을 반복합니다. 조건식이 false가 될때 반복문은 종료됩니다.
반복문을 즉시 종료하고 싶을 때는 break 를 사용합니다
실습) 1 ~ 20 까지의 짝수를 출력해주세요
while 은 조건이 false 가 될 때 까지 반복합니다.
만약에 조건값이 true로 떨어진다면 while 은 끝나지 않고 계속 실행됩니다. 이것을 무한루프라고 부릅니다. while을 쓰실때는 종료시점을 잘 맞춰주셔야 됩니다.
do-while 도 while문 입니다. 왜 do가 붙었냐면 do-while은 무조건 1번은 실행하고 조건을 비교해 while문을 실행할지 말지 판단하기 때문입니다.
위의 경우 i 가 10 이기 때문에 10 < 5 는 성립하지 않습니다. 하지만 do 영역은 무조건 한번은 실행되기 때문에 console 에 10이 찍힙니다.
continue를 만나면 이후 구문 실행을 생략하고 조건검사 위치로 이동합니다.
간단한 문제 2를 제외한 0 ~ 4 까지 수를 출력 하세요
for 와 while은 둘다 반복문 입니다. for 로 만들어진걸 while 로 변경할 수 있고 while 만들어진걸 for로 변경하는 것도 가능합니다.
그렇다면 차이점은 무엇일까요 ?
for 는 초기값 => 조건 => 실행 => 증감식의 순서로 실행이 됩니다. while 의 경우 조건만 비교를 한 후 실행을 시키기 때문에 for 보다 while 의 속도가 빠릅니다.
for 문 같은 경우 for문 자체에서 범위에 대한 처리가 가능합니다.
범위에 대한 처리 ( ex. 1 ~ 10 ) 이라는 처리를 while 문 조건에서 처리할 수 없습니다. 밖에서 처리를 해줘야합니다. while 은 조건을 비교한 후 while 영역 안에서 후처리를 합니다.
간단한 문제1 라이언은 카카오중학교 학생이다. 라이언은 국어 78점을 맞았다. 라이언의 등급을 출력하시오 (80이상 A, 70이상 B, 69이상 C)
간단한 문제2 라이언은 1~30 사이의 숫자중 짝수들의 숫자만 더하는 프로그램을 만들고싶다. 1 ~ 30 사이의 수들중 짝수만 골라내어 합산하는 프로그램을 만들어봅시다.