선택 구조 / 반복 구조
반복 구조의 이해
Section titled “반복 구조의 이해”반복 구조의 정의
Section titled “반복 구조의 정의”특정 영역의 명령문을 여러 번 재실행하는 구조
- 동일한 코드를 반복적으로 작성하지 않고도 지정된 작업을 여러 번 수행 가능
- 반복 횟수를 조건에 따라 결정
- loop, iterate, repeat 용어를 혼용
반복 구조의 구문 형식
Section titled “반복 구조의 구문 형식”- 조건 제어 반복의 구문 형식
while 반복-계속-조건:
명령문 집합 - 계수 제어 반복의 구문 형식
for 계수-제어-변수 in 시퀀스:
명령문 집합
# 메시지 저장msg = "저는 파이썬을 잘 합니다."
# 5회 반복 출력count = 0while count < 5: print(msg) count += 1변수의 현재 값에 특정 값을 증가 또는 차감한 후 그 결과를 동일한 변수에 재할당하는 연산
- 카운팅, 값의 누적, 문자열 연결 등의 목적으로 사용
읽기: 메모리에서 count의 현재 값 읽기
계산: 현재 값에 + 1 연산
저장: 결과를 같은 이름 count에 덮어쓰기
복합 할당 연산자
Section titled “복합 할당 연산자”변수의 값을 변경하고 결과를 다시 그 변수에 할당하는 과정을 간결하게 처리하는 연산자
일반 이항 연산자(+, // 등)와 할당 연산자의 결합
| 연산자 | 예시 | 의미 |
|---|---|---|
| += | a += b | a = a + b |
| -= | a -= b | a = a - b |
| _= | a _= b | a = a * b |
| /= | a /= b | a = a / b |
| %= | a %= b | a = a % b |
| **= | a **= b | a = a ** b |
| //= | a //= b | a = a // b |
반복 구조 설계 전략
Section titled “반복 구조 설계 전략”- 단계 1: 반복되어야 하는 명령 블록을 작성
- 단계 2: 반복되어야 하는 명령문을 다음과 같이 반복 구조로 작성
while True:
명령 블록 - 단계 3: 반복-계속-조건을 작성하고 반복 구조를 제어하기 위해 반복 제어 명령문을 추가
while 반복-계속-조건:
명령 블록
반복 제어 명령문
# 단계 1sum += i
# 단계 2while True: sum += i
# 단계 3sum = 0i = 1last = int(input("합산할 숫자를 입력하세요: "))while i <= last: sum += i i += 1print("1부터", str(last)+"까지의 합은", str(sum)+"입니다.")리스트의 개념
Section titled “리스트의 개념”여러 개의 데이터(값)를 순서대로 묶어서 저장하는 자료구조
- 원소(element)의 나열을 저장할 수 있는 시퀀스 타입 · 시퀀스: 리스트, 튜플 등
- 데이터가 저장된 순서가 명확하게 유지
- 단일 식별자로 연속된 저장 공간 접근 수단 제공 · 각 데이터는 0부터 시작하는 고유한 ‘순번’(인덱스)이 지정
- 개별 원소의 값을 수정, 추가, 삭제 가능
- 중복된 값 뿐만 아니라 숫자, 문자열, 다른 리스트 등 서로 다른 데이터 타입의 데이터 저장 가능
리스트의 구성
Section titled “리스트의 구성”직접 참조하는 일반 변수와 달리, 리스트는 값들의 주소가 담긴 목록을 참조하는 간접 참조 방식
구문 형식 : 인용부호 [와]를 사용하여 표현, 각 원소는 콤마(,) 로 구분
인덱스 연산자
Section titled “인덱스 연산자”시퀀스 타입의 원소에 접근하는 연산자
- 접근 연산자 [ , ] 사용
- 원소에 부여된 인덱스 번호로 지칭
- 인덱스 번호는 0부터 시작 [0] [1] [2] [4]
계수 제어 반복의 구문 형식
Section titled “계수 제어 반복의 구문 형식”- 계수-제어 변수와 시퀀스 사용
- 반복 시 계수-제어-변수에 원소를 순차적으로 할당
# 구문 형식for 계수-제어-변수 in 시퀀스: 명령문 집합
# 리스트 생성hei_list = [1, 4, 14, 26, 31]
# 리스트 원소 출력for hei in hei_list: print(hei)