중첩 반복문
Coddy Python 여정의 기초 섹션에 포함된 레슨. 77개 중 41번째.
중첩 루프는 다른 루프 안에 있는 루프입니다. 내부 루프는 외부 루프의 각 반복마다 모든 반복을 완료합니다.
개념을 이해하기 위해 간단한 중첩 루프부터 시작해 봅시다:
rows = 3
cols = 2
# 바깥쪽 반복문
for i in range(rows):
print(f"Outer loop iteration: {i}")
# 안쪽 반복문
for j in range(cols):
print(f" Inner loop iteration: {j}")이 코드를 실행하면 다음과 같이 표시됩니다:
Outer loop iteration: 0
Inner loop iteration: 0
Inner loop iteration: 1
Outer loop iteration: 1
Inner loop iteration: 0
Inner loop iteration: 1
Outer loop iteration: 2
Inner loop iteration: 0
Inner loop iteration: 1외부 루프가 한 번 반복될 때마다 내부 루프가 모든 반복을 완료한다는 점에 유의하세요. 각 루프에는 자체 카운터가 있습니다. 외부 루프가 실행될 때마다 j는 0부터 다시 시작하지만, rows와 cols는 그대로 유지되며 루프가 언제 멈출지만 알려 줍니다.
이제 간단한 패턴을 출력하는 실용적인 예제를 살펴보겠습니다:
# 별로 이루어진 2x3 직사각형을 출력합니다
for row in range(2): # 2개 행
line = ""
for col in range(3): # 3개 열
line += "*"
print(line)
# 출력:
# ***
# ***바깥쪽 루프는 출력할 행의 수를 제어하고, 안쪽 루프는 별표를 추가하여 각 행을 만듭니다.
챌린지
쉬움중첩 루프를 사용하여 별표(*)로 이루어진 직사각형 패턴을 출력하는 코드를 작성하세요.
프로그램은 다음을 수행해야 합니다.
- 정수 두 개,
rows와cols를 입력받습니다. - 중첩 루프 구조를 사용하여 패턴을 출력합니다.
- 외부 루프는 각 행을 반복해야 합니다.
- 내부 루프는 올바른 개수의 별표로 각 행을 만들어야 합니다.
- 완성된 각 행을 출력합니다.
예: 입력이 행 3개, 열 4개라면 출력은 다음과 같아야 합니다.
****
****
****각 루프마다 새 카운터를 사용하고(예: 행에는 i, 한 행의 별표에는 j) 이를 rows 또는 cols와 비교하세요. rows와 cols 자체는 변경하지 마세요. 각 행마다 cols가 다시 필요합니다.
직접 해보기
# 행과 열의 입력값을 받으세요
rows = int(input())
cols = int(input())
# 여기에 중첩 반복문을 작성하세요
# 행을 위한 바깥쪽 반복문
# 열을 위한 안쪽 반복문이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: 온라인 Python 컴파일러