You are on page 1of 6

조건문

지난 시간 복습

1. 산술 연산자

>>> 30 + 12 / 4 - 45

-12.0

>>> (34+12)/4

11.5

>>> 10/3

3.3333333333333335

>>> 10%4

>>> 2**10

1024

2. 비교 연산자

>>> n = 3

>>> n == 3

True

>>> n != 3

False

>>> n < 3

False

>>> n > 3

False

>>> n <= 3

True

>>> n >= 3

True

>>> 1 < n < 5

True
조건문 정의

단순 조건문 중첩 조건문 다중 조건문

if 조건식: if 조건식1: if 조건식1:


명령문1 if 조건식2: 명령문1
else: 명령문1 elif 조건식2:
명령문2 else: 명령문2
명령문2 else:
else: 명령문3
명령문3

1. 단순 조건문
- 조건이 한 가지인 경우를 말한다.
- if 문의 [조건식] 결과 값이 참이면 ( 명령문1 )을 수행한다.
- if 문의 [조건식] 결과 값이 거짓이면 ( 명령문2 )을 수행한다.

2. 중첩 조건문
- 조건문 안에 조건문이 있는 구조를 말한다.
- if 문의 [조건식 1]과 [조건식 2]의 결과가 참인 경우 ( 명령문1 )을 수행한다.
- if 문의 [조건식 1] 결과는 참, [조건식 2]의 결과는 거짓인 경우 ( 명령문2 )을
수행한다.
- if 문의 [조건식 1] 결과가 거짓인 경우 ( 명령문3 )을 수행한다.

3. 다중 조건문
- 선택 사항이 여러 개일 경우에 사용하는 구조를 말한다.
- if 문의 [조건식 1]이 거짓이면, elif 문의 [조건식 2]를 판단하고 참이 아니면, else 문을
수행하는 구조이다.
- [조건식 1]의 결과가 참인 경우 ( 명령문1 )을 수행한다.
- [조건식 1]의 결과가 거짓이고, [조건식 2]의 결과가 참인 경우 ( 명령문2 )을
수행한다.
- [조건식 1]과 [조건식 2]의 결과가 모두 거짓인 경우 ( 명령문3 )을 수행한다.
조건문 활용(성격 유형 검사 프로그램 작성하기)

1단계: 외향형과 내향형 나눠보기(단순 조건문 활용하기)

if ( answer1 == 1 ):

print(“E”)

else:

print(“I”)

2단계: 외향형과 내향형을 나눌때 잘못된 입력값 찾기(다중 조건문 활용하기)

if (answer1 == 1):

print(“E”)

elif (answer1 == 2):

print(“I”)

else:

print(“잘못 입력하였습니다”)

3단계: 중첩 조건문 완성하기

if answer1 == 1:

if answer2 == 1:

print(“ES“)

else:

print(“EN“)

else:

if answer2 == 1:

print(“IS“)

else:

print(“IN“)

4단계: 다중 조건문으로 완성하기


- 첨부파일 참고
연습문제

1. 가위바위보 게임 프로그램 작성하기


import random

computer = random.randint(1, 3)

player = int(input(“가위, 바위, 보 중 하나를 선택하시오. (가위=1, 바위=2, 보=3): “))

if computer == player:

print(“비겼습니다.”)

elif player == 1:

if computer == 2:

print(“졌습니다. (가위 < 바위)”)

else:

print(“이겼습니다. (가위 > 보)”)

elif player == 2: # player == 바위

if computer == 1: #가위

print(“이겼습니다. (바위 > 가위)”)

else: #보

print(“졌습니다. (바위 < 보)”)

elif player == 3: # 보

if computer == 1: #가위

print(“졌습니다.”)

else: #바위

print(“이겼습니다”)

else:

print(“잘못된 입력입니다.”)
2. 두뇌 학습 게임 프로그램 작성하기
import random

score = 0

def calculation():

global score

a = random.randint(1, 10)

b = random.randint(1, 10)

c = random.randint(1, 3)

if c == 1:

operator = “+”

elif c == 2:

operator = “-”

else:

operator = “x”

print(a, operator, b)

respond = int(input(“=”))

if operator == “+”:

if (a + b) == respond:
print(“정답입니다”)
score = score + 20
else:
print(“오답입니다”)

elif operator == “-”:

if (a - b) == respond:
print(“정답입니다”)
score = score + 20
else:
print(“오답입니다”)

else: #곱하기

if (a * b) == respond:
print(“정답입니다”)
score = score + 20
else:
print(“오답입니다”)
calculation(), calculation(), calculation(), calculation(), calculation()

print(“획득한 점수: “, score)

You might also like