Javascript

[javascript] 중첩 반복문 - 중첩 for문, 중첩 while문 (feat. 구구단)

jojv 2023. 6. 19. 11:13
728x90
반응형

반복문 안에 반복문!!

반복될수록 은근히 헷갈리는 녀석!

오늘 제대로 알아보렵니다:)

 

 

💫 중첩 반복문

중첩 반복문은 반복문 안에 새로운 반복문이 들어가는 것을 말합니다.

중첩의 횟수도 제한이 없습니다!

그리고 for문, while문 어떤 반복문도 중첩이 가능합니다.

 

중첩 for문

for(begin1; condition1; step1){           // 외부 반복문
	for(begin2; condition2; step2){   // 내부 반복문
    	반복할 명령문!
    }
}

반복문 안에 작성되어 있는 반복문을 내부 반복문, 내부 반복문을 감싸고 있는 반복문을 외부 반복문이라고 합니다.

내부 반복문의 루프가 끝나면 외부 반복문이 증가 또는 감소하는 식으로 반복동작합니다.

 

예시를 통해 더욱 자세히 이해해보겠습니다.

for( i=0; i < 3; i++ ){
	for( j=0; j < 3; i++ ){
    	console.log(i,j)
    }
}

// 출력값
// 0, 0 
// 0, 1
// 0, 2
// 0, 3
// 1, 0
// 1, 1
// 1, 2 .......

위의 예시는 외부 반복문의 i가 0일 때 내부 반복문의 j가 0에서 3까지 반복되고 난 후,

외부 반복문으로 돌아와 증감식을 수행하여 1증가하여 i가 1일 때 내부 반복문의 j가 0에서 3까지 반복되는.....

외부 반복문과 내부 반복문의 종결 조건까지 반복되는 구조입니다!!

 

중첩 while문

while (condition1) {
  // 코드1
  // 반복문 본문1
  while (condition2) {
    // 코드2
    // 반복문 본문2
    }
}

중첩 while도 for문 동일하게 반복됩니다.

중첩 for문을 잘 이해하셨다면, while문의 중첩도 쉽게 이해가 가실겁니다. 

 

구구단

중첩 반복문의 예제로 유명한(?) 구구단입니다.

 

먼저, 중첩  for문을 이용해보았습니다.

for(var i = 2; i <= 9; i++){
        for(var j =1; j <= 9; j++){
            let sum = i * j;
            document.write(i + "*" + j + "=" + sum, "<br>");
        }
        document.write("<br>");
}

 

다음은 중첩  while문을 이용해 구현해보았습니다.

var dan=2, i=1;
while(dan < 10){
  document.write('<br>');
  i=1;
  while(i<10){
  	document.write(dan * i = dan * i );
   	i++;
  }
  dan++;
}

 

 

구구단 뿐만 아니라

다양하게 사용될 수 있으니, 꼭 기억해두시면 좋을 듯 합니다.

 

글 읽어 주셔서 감사합니다.

부족한 부분이 있다면 댓글로 알려주시면 감사히 배우겠습니다:)

728x90