본문으로 건너뛰기
Python 기초집LESSON 04

산술·비교·논리 연산자

난이도입문
예상 시간30분
선수지식이전 강의

4강. 산술·비교·논리 연산자

1. 이번 강의에서 해결할 문제

입력한 값만 출력해서는 전투 결과를 분석할 수 없습니다. 방어력을 반영한 피해, 평균, 생존 여부를 연산자로 계산합니다.

2. 학습 목표

3. 핵심 개념

+ - * / // % **는 수치 계산, == != < <= > >=는 비교에 사용합니다. 논리 연산자는 불리언 표현식을 조합합니다. 연산 우선순위가 불분명하면 괄호로 의도를 드러냅니다.

4. 단계별 코드 예시

파일 경로: C:\dev\game-log-analyzer\main.py

main.py
raw_damage = int(input("원시 피해량: "))
defense = int(input("몬스터 방어력: "))
monster_hp = int(input("몬스터 체력: "))
critical = input("치명타인가요? (y/n): ").lower() == "y"

critical_multiplier = 1.5 if critical else 1.0
actual_damage = max(0, int(raw_damage * critical_multiplier) - defense)
remaining_hp = max(0, monster_hp - actual_damage)
defeated = remaining_hp == 0
high_damage = actual_damage >= 100 and not defeated

print(f"실제 피해: {actual_damage}")
print(f"남은 체력: {remaining_hp}")
print(f"처치 여부: {defeated}, 고피해 생존: {high_damage}")
PowerShell · 실행
py -3.13 .\main.py

5. 코드가 동작하는 이유

조건 표현식은 critical 값에 따라 배율을 선택합니다. max(0, ...)은 방어력이 더 커도 음수 피해나 체력이 나오지 않게 합니다. 비교 결과를 이름에 저장하면 다음 조건문과 집계에서 재사용할 수 있습니다.

6. 자주 하는 실수와 해결법

7. 직접 실습

8. 이해 점검 질문 3개

9. 핵심 요약

MINI QUIZ

산술·비교·논리 연산자 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“산술·비교·논리 연산자”에서 혼동하기 쉬운 개념을 올바르게 연결한 것은 무엇인가요?
  2. 문제 2‘실수 연산 결과를 그대로 정수 지표로 사용’ 상태에 관한 “산술·비교·논리 연산자” 본문의 설명으로 가장 알맞은 것은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

4강. 산술·비교·논리 연산자 미완료 상태