티스토리 뷰
학습목표
- 제어문을 설명할 수 있다.
- If ~else문을 사용할 수 있다.
- 관계연산자와 논리연산자의 이해
- 블록의 이해와 중첩문을 사용할 수 있다.
01.프로그래밍에서 제어란?
→ 기계나 설비가 목적에 알맞은 동작을 하도록 조절하는 것
주요 내용:
- 컴퓨터 프로그램은 제시한 명령을 순차적으로 수행함.
- 프로그램은 논리적으로 구성된 알고리즘을 의미함.
- 논리적인 순서로 수행하기 때문에 순차적 프로그래밍이라고 부름.
- 명령이 실행되는 순서를 제어하는 명령문을 **제어문(control statement)**이라 함.
- 제어문은 수행하고자 하는 명령문을 제어하고 강제로 분기하기 위해 사용됨.
02. 제어문의 3가지 기본구조
명제, 조건, 관계식, 논리식의 개념
관계식(Relation Expression)
→ 관계 연산자로 두 수나 산술식을 연결한 식
→ 식의 결과는 항상 참(True) 또는 거짓(False)의 값을 가짐
- 3 < 5 → 참 (True)
- 5 > 10 → 거짓 (False)
- 10 - 4 > 5 + 1 → 6 > 6 → 거짓 (False)
- 10 - 4 = 5 + 1 → 오류 (파이썬에서는 =가 아닌 == 사용해야 함)
파이썬의 주요 비교 연산자
비교 연산자 | 의미 | 설명 |
x < y | 작다 | x가 y보다 작다 |
x > y | 크다 | x가 y보다 크다 |
x == y | 같다 | x와 y가 같다 |
x != y | 다르다 | x와 y가 같지 않다 |
x >= y | 크거나 같다 | x가 y보다 크거나 같다 |
x <= y | 작거나 같다 | x가 y보다 작거나 같다 |
⚠️ 주의사항
- =는 값을 할당하는 연산자이고
- ==는 같은지를 비교하는 비교 연산자이다.
따라서 비교할 때는 반드시 ==를 써야 한다!
논리식(Logical Expression)이란?
→ 논리 연산자로 명제나 조건을 연결하여 보다 복잡한 논리적 관계를 만드는 식
✅ 주요 논리 연산자
기호 | 의미 | 설명 | 파이썬 |
∧ | 논리곱 | 그리고 (AND) | and |
∨ | 논리합 | 또는 (OR) | or |
~ | 부정 | 아니다 (NOT) | not |
논리식의 예시
- "지구는 태양 주위를 돕니다 ∧ 모든 새는 날 수 있습니다."
→ 두 명제가 모두 참일 때만 전체가 참 - (3 < 5) ∨ (10 < 5)
→ 왼쪽은 참, 오른쪽은 거짓 → 전체는 참(True)
→ 논리합(or)이므로 하나만 참이어도 전체가 참임
파이썬에서의 논리 연산자 사용 예시
x = 3
y = 5
print(x < y and y < 10) # True
print(x > y or x < 10) # True
print(not(x < 10)) # False
조건의 역할
- 프로그램의 기능 구현에 필수적인 요소
- 어떤 기능을 반복하거나 선택하기 위한 기준 역할 수행
왜 중요할까?
- 조건이 참인지 거짓인지에 따라 프로그램 흐름이 달라짐
- 조건문(if)이나 반복문(while)에서 반드시 사용됨
- 현실 세계의 규칙(나이, 가격, 조건 등)을 논리식으로 표현할 수 있음
age = int(input("나이를 입력하세요: "))
if age < 7 or age >= 70:
print("반값입니다.")
else:
print("정가입니다.")
문장의 제어란?
프로그래밍에서 명령문의 실행 흐름을 제어하는 방식으로,
프로그램의 반복 또는 선택적 실행을 가능하게 하는 제어 구조이다
🔁 반복적 실행 방식
- 설명:
반복 대상의 문장들을- 무한히 반복하거나,
- 정해진 횟수만큼 반복하거나,
- 특정 조건이 참 또는 거짓이 될 때까지 반복하는 방식
for i in range(5):
print(i) # 0부터 4까지 5번 반복 출력
while True:
print("무한 반복") # 조건이 True이므로 무한 반복됨
✅ 선택적 실행 방식
- 설명:
항상 조건과 함께 사용되며,- 그 조건이 참일 때 실행할 문장들과
- 거짓일 때 실행할 문장들을 나누어
조건에 따라 해당 문장을 선택해 실행하는 방식
- 예시 (파이썬):
age = int(input("나이를 입력하세요: "))
if age >= 70 or age < 7:
print("반값입니다.")
else:
print("정가입니다.")
728x90
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
반응형