Topic 1: 조건문 - 프로그램의 판단력 🤔
🎯 학습 목표
조건문의 개념을 이해하고 if, elif, else를 사용하여 프로그램이 상황에 따라 다른 동작을 하도록 만들 수 있습니다.
🧠 조건문이란?
일상생활의 조건 판단
우리는 매일 수많은 조건 판단을 합니다:
- “비가 오면 우산을 가져간다”
- “시험 점수가 90점 이상이면 A등급이다”
- “나이가 18세 이상이면 성인이다”
프로그래밍에서도 마찬가지로 조건에 따라 다른 동작을 하게 만들 수 있습니다.
조건문의 필요성
# 조건문이 없다면...
age = int(input("나이: "))
print("입력된 나이:", age)
# 항상 같은 결과만 출력
# 조건문을 사용하면...
age = int(input("나이: "))
if age >= 18:
print("성인입니다")
else:
print("미성년자입니다")
# 입력에 따라 다른 결과 출력!
🔍 if문 - 기본 조건 판단
if문의 기본 구조
if 조건:
실행할 코드
간단한 예시
temperature = 25
if temperature > 30:
print("더워요! 에어컨을 켜세요")
if temperature <= 30:
print("적당한 날씨네요")
🔍 if문 문법 요소
if temperature > 30:
# ↑ ↑ ↑
# 키워드 조건 콜론
print("더워요!")
# ↑
# 들여쓰기 (스페이스 4개)
중요한 규칙들:
if
뒤에는 참/거짓으로 판단할 수 있는 조건- 조건 뒤에는 반드시 콜론(
:
) - 실행할 코드는 들여쓰기 (스페이스 4개)
다양한 조건 예시
# 숫자 비교
score = 85
if score >= 90:
print("우수한 성적입니다!")
# 문자열 비교
weather = "맑음"
if weather == "비":
print("우산을 챙기세요")
# 불린 값 사용
is_student = True
if is_student:
print("학생 할인 적용됩니다")
🔀 if-else문 - 양자택일
else의 필요성
age = int(input("나이: "))
if age >= 18:
print("성인입니다")
else:
print("미성년자입니다")
else는 조건이 거짓일 때 실행됩니다.
실용 예시
# 패스워드 확인
password = input("비밀번호: ")
if password == "python123":
print("로그인 성공!")
else:
print("비밀번호가 틀렸습니다")
# 홀수/짝수 판별
number = int(input("숫자 입력: "))
if number % 2 == 0:
print(f"{number}는 짝수입니다")
else:
print(f"{number}는 홀수입니다")
🎭 if-elif-else문 - 다중 선택
여러 조건이 필요한 경우
score = int(input("점수: "))
if score >= 90:
print("A등급")
elif score >= 80:
print("B등급")
elif score >= 70:
print("C등급")
elif score >= 60:
print("D등급")
else:
print("F등급")
elif의 특징
elif
는 “else if”의 줄임말- 이전 조건이 거짓일 때만 확인됨
- 여러 개 사용 가능
- 순서가 중요함!
계절 판별 예시
month = int(input("월 입력: "))
if month >= 3 and month <= 5:
print("봄입니다")
elif month >= 6 and month <= 8:
print("여름입니다")
elif month >= 9 and month <= 11:
print("가을입니다")
else:
print("겨울입니다")
🔗 비교 연산자
기본 비교 연산자
a = 10
b = 5
print(a == b) # False (같다)
print(a != b) # True (다르다)
print(a > b) # True (크다)
print(a < b) # False (작다)
print(a >= b) # True (크거나 같다)
print(a <= b) # False (작거나 같다)
문자열 비교
name = "파이썬"
if name == "파이썬":
print("정확한 이름입니다")
if name != "자바":
print("자바가 아닙니다")
🏗️ 중첩 조건문
조건 안의 조건
age = int(input("나이: "))
has_license = input("운전면허가 있나요? (y/n): ")
if age >= 18:
print("성인입니다")
if has_license == "y":
print("운전할 수 있습니다")
else:
print("운전면허를 취득하세요")
else:
print("미성년자입니다")
print("운전할 수 없습니다")
중첩의 적절한 사용
weather = input("날씨: ")
temperature = int(input("기온: "))
if weather == "맑음":
print("좋은 날씨네요!")
if temperature > 25:
print("반팔을 입으세요")
else:
print("긴팔을 입으세요")
elif weather == "비":
print("우산을 챙기세요")
🚨 자주 발생하는 오류
오류 1: 들여쓰기 실수
# ❌ 틀린 예
if age >= 18:
print("성인입니다") # IndentationError!
# ✅ 올바른 예
if age >= 18:
print("성인입니다") # 스페이스 4개
오류 2: 콜론 누락
# ❌ 틀린 예
if age >= 18
print("성인입니다") # SyntaxError!
# ✅ 올바른 예
if age >= 18:
print("성인입니다")
오류 3: 할당과 비교 혼동
# ❌ 틀린 예
if age = 18: # SyntaxError! (할당 연산자)
# ✅ 올바른 예
if age == 18: # 비교 연산자
오류 4: 조건 순서 실수
# ❌ 논리적 오류
if score >= 60:
print("D등급")
elif score >= 70: # 이 조건은 절대 실행되지 않음!
print("C등급")
# ✅ 올바른 순서
if score >= 90:
print("A등급")
elif score >= 80:
print("B등급")
elif score >= 70:
print("C등급")
elif score >= 60:
print("D등급")
💡 퀴즈: 조건문 이해도 체크
Q1. 다음 코드의 출력 결과는?
x = 15
if x > 10:
print("크다")
elif x > 5:
print("중간")
else:
print("작다")
- 크다
- 중간
- 작다
- 아무것도 출력되지 않음
💡 정답 확인
정답: 1번 (크다)
x가 15이므로 첫 번째 조건 x > 10
이 참이어서 “크다”가 출력되고, elif는 실행되지 않습니다.
Q2. if문에서 가장 중요한 문법 요소는?
- 괄호 ()
- 콜론 :
- 세미콜론 ;
- 중괄호
💡 정답 확인
정답: 2번 (콜론 :)
파이썬의 if문은 조건 뒤에 반드시 콜론(:)이 와야 합니다.
Q3. elif의 의미는?
- else if
- end if
- error if
- exit if
💡 정답 확인
정답: 1번 (else if)
elif
는 “else if”의 줄임말로, 이전 조건이 거짓일 때 다음 조건을 검사합니다.
✅ 조건문 마스터 체크리스트
✅ 조건문 마스터 체크리스트
🚀 다음 단계
조건문의 기본을 익혔으니, 이제 더 복잡한 조건들을 다루는 방법을 배워보겠습니다!
다음 토픽에서는:
- 논리 연산자: and, or, not의 활용
- 복합 조건: 여러 조건을 조합하는 방법
- 조건 최적화: 효율적인 조건문 작성법
프로그램의 판단력이 한층 더 정교해질 것입니다! 💫
Last updated on