반복문

Verba volant, scripta manent·2021년 1월 12일
0

JavaScript

목록 보기
4/20
post-thumbnail

반복문

같거나 비슷한 코드를 여러 번 실행시켜야 할 경우에 쓰는 구문

ex)
let sum = 1;
sum = sum + 2;
sum = sum + 3;
sum = sum + 4;

console.log(sum);

이라고 하면 반복할 내용을 먼저 코드로 작성한다.
이 경우 작성하면 아래와 같이 된다.

let sum = 1;
sum = sum + 2;
sum = sum + 3;
sum = sum + 4;

이 부분은 여러 번 실행시키는 부분
"sum과 숫자(n)의 합"을 "sum에 대입"하자
조건은
1. 숫자(n)는 2부터 시작한다.
2. 숫자(n)가 4가 될때까지 반복한다.
3. 숫자(n)는 1씩 증가한다.

console.log(sum);

그 다음 반복할 조건을 코드로 작성한다.

let sum = 1;

"sum과 숫자(n)의 합"을 "sum에 대입"하자 : sum = sum + n;

조건:
1. 숫자(n)는 2부터 시작한다. : let n = 2;
2. 숫자(n)가 4가 될때까지 반복한다. : n <= 4;
3. 숫자(n)는 1씩 증가한다. : n = n + 1;

console.log(sum);

for 구문

단순히 코드를 일정 횟수 반복 시키려고 할때 사용

1.반복할 내용을 중괄호 block 안에 넣어준다

위의 예시를 for문으로 바꿔보자.

let sum = 1;

for( ) {
sum = sum + n; // 반복할 내용
}
console.log(sum);

그럼 조건식들은 어디에 넣는가?(let n = 2; , n <= 4; , n = n + 1;)

2.반복할 조건을 ①초기화, ②조건식, ③증감문 순으로 넣어준다.

let sum = 1;

for(①let n = 2;②n <= 4;③n = n + 1) {
  sum = sum + n;
}
console.log(sum); // 10

(연습문제)

for(    ;    ;    ) {
  console.log('hello world');
}

위의 콘솔 출력을 다섯번 반복해서 찍기 위해 필요한 조건은 무엇인가?

(정답)

for(let n = 1; n <= 5; n = n + 1) {
  console.log('hello world');
}

n이 1부터 5까지 1씩 증가하면 1,2,3,4,5 총 5번을 반복하게 되므로 let n = 1; n <= 5; n = n + 1 으로 쓸 수 있다.

그 외에도

for(let n = 0; n <= 4; n = n + 1) {
  console.log('hello world');
} // 0,1,2,3,4 <- 총 5번
for(let n = 0; n < 5; n = n + 1) {
  console.log('hello world');
} // 0,1,2,3,4 <- 총 5번
for(let n = 1; n < 6; n = n + 1) {
  console.log('hello world');
} // 1,2,3,4,5 <- 총 5번

도 가능하다.

while 구문

정한 조건에 부합할 때 까지만 코드를 반복할 때 사용

for 구문처럼 반복문으로 쓰이나 for 구문은 소괄호 안에 ①초기화, ②조건식, ③증감문이 전부 들어가는 반면에
while 구문은 반복할 조건 중, ①초기화와 ③증감문은 따로 빼놓고, ②조건식만 괄호 안에 넣어준다는 차이점이 있다.

<비교>
(for 구문)

let sum = 1;

for(① let n = 2; ② n <= 4; ③ n = n + 1) { // 초기화, 조건식, 증감문 모두 소괄호안에
  sum = sum + n;
}
console.log(sum); // 10

(while 구문)

let sum = 1;
① let n = 2;  //  초기화 while 바깥에

while(② n <= 4) { // 조건식 소괄호안에
  sum = sum + n;
  ③ n = n + 1; // 증감문 while 안에
}
console.log(sum); // 10

while 구문 해석

let sum = 1;
let n = 2;

while(n <= 4) {
sum = sum + n;
n = n + 1;
}
console.log(sum); // 10

초기화와 증감문이 없다고 간주하고 while(n < =4)를 해석하면
n이 4가 될때까지는 모두 true여서 통과지만 5부터는 4보다 커서 false가 되므로 통과시키지 말고 4까지 반복을 하라는 뜻이다.

profile
말은 사라지지만 기록은 남는다

0개의 댓글

관련 채용 정보

Powered by GraphCDN, the GraphQL CDN