1. if/else 및 조건 연산자를 통한 흐름제어
1. 조건문과 일상 속 예시
욕조가 넘치지 않는 이유는 "오버플로우 구멍"이라는 장치 덕분이다. 물이 일정 높이 이상 올라가면 자동으로 넘치는 물을 빼주는 시스템이다. 이를 파이썬 코드로 표현하면 조건문(if, else)을 사용할 수 있다.
예를 들어, 물 높이가 80cm를 넘으면 물을 빼고, 그렇지 않으면 계속 채운다.
water_level = 50 if water_level > 80: print("물이 넘치므로 배수합니다.") else: print("계속 물을 채웁니다.")
2. 조건문 기초 문법
if 조건식: 조건이 참일 때 실행할 코드 else: 조건이 거짓일 때 실행할 코드
: 콜론 필수
들여쓰기(Indentation) 중요. 블록 단위로 실행될 코드를 나타냄
3. 실습 예제: 놀이공원 티켓 발급
조건: 키가 120cm 이상이면 탑승 가능
print("롤러코스터에 오신 것을 환영합니다!") height = int(input("당신의 키는 몇 cm입니까? ")) if height >= 120: print("롤러코스터를 탈 수 있습니다!") else: print("죄송합니다. 더 자란 후에 다시 오세요.")
4. 비교 연산자 정리
5. 주의할 점
= vs == 혼동 금지
if와 else는 같은 들여쓰기 수준에 위치해야 함
조건문 블록 내 코드는 반드시 들여쓰기
조건문이 참이면 if 블록이 실행되고, 거짓이면 else 블록 실행
6. 결론
if와 else를 활용하면 다양한 조건에 따라 프로그램의 흐름을 제어할 수 있다. 이를 통해 사용자 입력에 따른 맞춤형 반응을 구현할 수 있으며, 비교 연산자와 함께 사용하면 훨씬 더 다양한 로직을 작성할 수 있다.
2. Modulo 연산자와 홀짝 판별 프로그램 만들기
1. 연산자란?
**연산자(operator)**는 프로그래밍에서 특정 기능을 수행하는 기호입니다.
예: 산술 연산자(+, -, *, /), 비교 연산자(==, !=, >, <) 등
2. Modulo 연산자란?
% 기호를 사용하며, 나눈 뒤의 나머지를 반환합니다.
예시:
10 % 5 = 0 (5로 나누어 떨어짐 → 나머지 없음)
10 % 3 = 1 (3으로 나누면 몫은 3, 나머지는 1)
3. Modulo 연산자를 활용한 홀짝 판별 방법
짝수: 어떤 수를 2로 나눴을 때 나머지가 0인 수
홀수: 어떤 수를 2로 나눴을 때 나머지가 1인 수
예시:
12 % 2 = 0 → 짝수
3 % 2 = 1 → 홀수
19 % 2 = 1 → 홀수
4. 실습 과제: 사용자 입력값이 홀수인지 짝수인지 판별하기
작업 순서:
사용자로부터 숫자를 입력받기
입력값을 정수형(int)으로 변환
% 연산자를 사용하여 짝수/홀수 판별
if-else 문으로 출력 분기
예시 코드:
# 1. 사용자 입력 받기 number_to_check = int(input("확인할 숫자를 입력하세요: ")) # 2. 홀짝 판별 if number_to_check % 2 == 0: print("짝수입니다.") else: print("홀수입니다.")
5. 요약 및 학습 팁
% 연산자는 나머지를 반환하며, 홀짝 판별에 자주 사용됩니다.
if 조건문과 함께 쓰면 프로그램 흐름을 제어할 수 있습니다.
실습을 통해 개념을 직접 구현하고 이해하는 것이 중요합니다.
실수는 자연스러운 과정이며, 반복 학습을 통해 익히면 됩니다.
3. 파이썬 조건문 중첩 및 Elif 문 정리
1. 복습: if-else 문
이전 강의에서는 키(height)를 기준으로 if-else 문을 사용하여 120cm 이상일 경우에만 티켓 구매가 가능하도록 만들었습니다.
if height > 120: # 티켓 구매 가능 else: # 티켓 구매 불가
2. 새로운 조건 추가: 나이(age)
이번에는 키뿐만 아니라 나이에 따라 티켓 가격을 다르게 설정해야 합니다.
18세 초과: 성인 요금 $12
18세 이하: 청소년 요금 $7
이를 구현하기 위해 중첩 if문(nested if statement)을 사용할 수 있습니다.
if height > 120: age = int(input("나이를 입력하세요: ")) if age <= 18: print("티켓 가격은 $7입니다.") else: print("티켓 가격은 $12입니다.") else: print("키가 120cm 미만이므로 탑승할 수 없습니다.")
위 코드에서 age 조건은 height 조건이 참일 경우에만 검사됩니다.
3. 조건 세분화: 3단계 요금제
상사가 코드 검토 후 요금제를 다음과 같이 변경 요청합니다:
12세 미만: $5
12세 이상 ~ 18세 이하: $7
18세 초과: $12
이처럼 세 가지 이상의 조건이 필요할 때는 elif 문을 사용합니다.
if height > 120: age = int(input("나이를 입력하세요: ")) if age < 12: print("티켓 가격은 $5입니다.") elif age <= 18: print("티켓 가격은 $7입니다.") else: print("티켓 가격은 $12입니다.") else: print("키가 120cm 미만이므로 탑승할 수 없습니다.")
elif는 else if의 줄임말로, 앞의 조건이 False일 때 이어서 조건을 확인합니다.
elif는 여러 개 사용할 수 있어 다양한 조건을 세분화할 수 있습니다.
4. 확장 가능성
elif를 이용하면 다양한 가격 정책을 더 추가할 수 있습니다:
elif age < 22: print("티켓 가격은 $10입니다.")
필요에 따라 elif 블록을 계속 추가하여 더 복잡한 로직도 구현 가능합니다.
✅ 연습 팁
직접 코드를 작성해 보며 중첩 if 문과 elif의 흐름을 익히세요.
다양한 나이와 키 값을 입력해보며 출력이 예상대로 나오는지 확인해보세요.
4. 다중 연속 If 문
1. 하나의 조건만 확인하는 경우: if / elif / else
if / elif / else 문은 여러 조건을 확인할 수 있지만 오직 하나의 조건만 실행됩니다.
첫 번째 조건이 참이면, 해당 블록의 코드가 실행되고 나머지는 무시됩니다.
예를 들어,
if condition_a: # A 실행 elif condition_b: # B 실행 else: # C 실행
위 코드에서 조건 A가 참이면 B와 C는 실행되지 않습니다.
2. 여러 조건을 모두 확인해야 하는 경우: 다중 if문
각각의 조건이 독립적이라면 여러 개의 if 문을 사용해야 합니다.
각각의 if 조건이 참일 경우, 모두 실행됩니다.
예를 들어,
if condition_a: # A 실행 if condition_b: # B 실행 if condition_c: # C 실행
위 코드에서는 A, B, C 중 조건이 참인 것 전부 실행됩니다.
3. 롤러코스터 티켓 예제
기본 조건:
키가 120cm 이상일 경우만 탑승 가능
나이에 따라 티켓 가격이 다름
12세 미만: $5
12세 이상 ~ 18세 미만: $7
18세 이상: $12
새로운 조건:
사진을 찍고 싶다면 추가로 $3 부과
이 조건은 나이, 키와 무관하게 항상 확인해야 함
구현 코드 요약:
print("Welcome to the rollercoaster!") height = int(input("What is your height in cm? ")) if height >= 120: age = int(input("What is your age? ")) bill = 0 if age < 12: bill = 5 print("Child tickets are $5.") elif age < 18: bill = 7 print("Youth tickets are $7.") else: bill = 12 print("Adult tickets are $12.") wants_photo = input("Do you want a photo taken? Y or N. ") if wants_photo == "Y": bill += 3 print(f"Your final bill is ${bill}.") else: print("Sorry, you have to grow taller before you can ride.")
4. 요점 정리
if / elif / else는 단일 선택에서 사용
여러 조건을 모두 평가해야 할 때는 여러 개의 if문 사용
추가 조건(예: 사진 여부)은 메인 조건문과 별도로 분리하여 확인
들여쓰기는 파이썬에서 중요! 같은 수준의 들여쓰기로 블록 구성해야 올바르게 작동
5. 연산자 팁
bill += 3 은 bill = bill + 3의 축약형
변수 값을 누적하거나 증가시킬 때 유용하게 사용됨
댓글 ( 1)
댓글 남기기