반복 속의 반복, 중첩 반복문
프로그램을 만들다 보면 반복문 안에 또 다른 반복문을 사용해야 하는 경우가 있습니다.
예를 들어 행과 열로 구성된 표 데이터를 처리하거나, 복잡한 패턴을 출력할 때 2개 이상의 반복문이 필요합니다.
이렇게 하나의 반복문 내부에 또 다른 반복문이 있는 구조를 중첩 반복문
이라고 합니다.
이번 수업에서는 중첩 반복문이 무엇인지, 간단한 예시와 함께 프로그래밍에서의 활용 사례를 살펴보겠습니다.
중첩 반복문은 어떠한 상황에 사용할까요?
중첩 반복문을 사용하면 2차원 배열(행렬)이나 테이블 같은 구조를 쉽게 다룰 수 있습니다.
예를 들어, 별표(*)로 구성된 직사각형을 출력하는 프로그램을 작성해 보겠습니다.
# 행(가로) 갯수 rows = 3 # 열(세로) 갯수 cols = 5 for i in range(rows): # 외부 반복문: 행 반복 for j in range(cols): # 내부 반복문: 열 반복 print("*", end="") # 같은 줄에 별 출력 print() # 한 행이 끝나면 줄 바꿈
이 코드는 아래와 같이 3행(가로) 5열(세로)의 직사각형을 출력합니다.
외부 for
문이 행(rows) 출력을 담당하고, 내부 for
문이 열(cols) 출력을 담당합니다.
***** ***** *****
코드에서 i
는 외부 반복문에, j
는 내부 반복문에 사용되는 변수입니다.
외부 반복문에서 i
는 0부터 2까지 증가하면서 내부 반복문이 실행됩니다.
내부 반복문에서 j
는 0부터 4까지 증가하면서 별표를 5번 출력합합니다.
한 행이 끝나면 i
의 값이 1 증가하고, 다시 내부 반복문이 실행되어 다음 행을 출력합니다.
i
의 값이 2가 되면 외부 반복문이 종료되고, 프로그램이 종료됩니다.
프로그래밍 속 활용 사례
중첩 반복문은 다양한 프로그래밍 상황에서 활용됩니다.
아래 구구단 출력 예시를 통해 중첩 반복문의 활용 사례를 살펴보겠습니다.
구구단 출력하기
아래 코드는 구구단의 각 단에 대해 1부터 9까지 곱한 결과를 출력합니다.
# 2단부터 9단까지 반복 for i in range(2, 10): # 각 단에서 1부터 9까지 곱하기 for j in range(1, 10): # 결과 출력 print(f"{i} x {j} = {i*j}") # 한 단이 끝나면 줄 바꿈 print()
이 코드는 구구단의 각 단을 계산하여 출력하며, 결과는 다음과 같이 나옵니다:
2 x 1 = 2 2 x 2 = 4 2 x 3 = 6 2 x 4 = 8 2 x 5 = 10 2 x 6 = 12 2 x 7 = 14 2 x 8 = 16 2 x 9 = 18 3 x 1 = 3 3 x 2 = 6 3 x 3 = 9 ...(중략)... 9 x 7 = 63 9 x 8 = 72 9 x 9 = 81
중첩 반복문은 행과 열로 구성된 표 데이터를 처리할 때 유용하다.
가이드라인
AI 튜터
배포
디자인
업로드
수업 노트
즐겨찾기
도움말
코드 에디터
실행 결과