Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

1 조건문

목차 1 2

제어문과 관계 연산자와
조건문 소개 논리 연산자
제어문과 조건문 소개
제어문
예 : 쿠팡에서 물건을 구입할 때 4만원 이상 구매해야
배송비를 무료로 해준다고 가정해보자. 프로그램 내부에서는
어떻게 이런 사항을 처리할 수 있을까?

• 현실 세계에서 우리가 고려하고, 생각할 수 있는 다양한 상황을


프로그램 내부에서 충분히 반영할 수 있어야 함
• 컴퓨터 프로그램은 기본적으로 작성된 순서에 따라 순차적으로
명령어가 처리되어 일을 진행함 (순차 구조)
• 이 과정에서 명령어에 선택 구조나 반복 구조를 넣어서 명령어
처리를 제어할 수 있음
제어문과 조건문 소개
제어문
• 만약 프로그램에 선택이나 반복 구조가 없다면, 명령어의 흐름을
변화시킬 수 없고, 그러면 현실 세계의 다양한 상황을 고려해서
프로그램을 만들기 어려울 수 있음

순차 구조 선택 구조 반복 구조

참 거짓 참 거짓
제어문과 조건문 소개
조건문
• 파이썬에서는 명령어의 선택 구조를 만들기 위해서
‘조건문’이라는 방법(문법)을 제공하고 있음
• 조건문이란 명시한 조건의 True 혹은 False의 결과에 따라
프로그램 실행여부(흐름)를 결정하는 기능

start

condition

True False

A B

end
제어문과 조건문 소개
조건문
n=5, m=3 일 경우는?

start start

n >= m 5 >= 3

True False True False

Print(“n”) Print(“m”) Print(“n”) Print(“m”)

end end

주어진 조건문 조건문의 동작 (빨간색 부분)


제어문과 조건문 소개
조건문

• 왼쪽은 논리적인 순서도를


start
의미하는 것이고,
프로그래밍을 통해서
이와 같이 특정 조건에 따른
n >= m 선택 구조를 만들어서
명령어를 처리할 수 있어야 함
True False

Print(“n”) Print(“m”) • 파이썬 뿐만 아니라,


C, Java 같은
많은 프로그래밍 언어가
end
이와 같이 선택 구조를
반영할 수 있는 조건문을
주어진 조건문 제공하고 있음
제어문과 조건문 소개
파이썬에서의 조건문
• 명시한 조건의 True 혹은 False의 결과에 따라
프로그램 실행여부(흐름)를 결정하는 기능
여기서 중요한 것은 “조건의 True 혹은 False의 결과에 따라”
• 조건식은 True/False로 계산되어야 함

Statement Description
if if문에 대한 조건을 명시
if, else if part와 else part의 조건을 명시
중첩 조건문 if문 내부에 if문을 사용하는 경우
관계 연산자와 논리 연산자
Boolean

앞서 파이썬의 기본 자료형인
정수형, 실수형, 문자형 등을 배웠음

이 세가지 자료형 이외 Boolean (불리언)도


자주 사용되는 기본 자료형임

Boolean은 오직 True와 False라는 값만 바인딩 될 수 있음


• 오른쪽 예에서 보면 알듯이, bool (boolean의 약자) 타입의
데이터가 있음
• 파이썬에서 True, False는 예약어이며, 첫 글자는 반드시 대문자
관계 연산자와 논리 연산자
Boolean

Boolean 연산자는 왜 언급할까?


• 조건식의 결과가 boolean 타입으로 나와야 하며,
보통 파이썬에서 boolean은 비교 연산에서 많이 사용됨
• 비교 연산을 위해서는 아래와 같은 관계 연산자가 활용됨

연산자 의미
== 같다
!= 같지 않다
> 크다
>= 크거나 같다
< 작다
<= 작거나 같다
관계 연산자와 논리 연산자
Boolean

문자열에서도 비교 연산자 적용 가능
• 사전 순서(가나다…)를 따라 앞에 있는 것이 작은 값
• ‘ㅂ’이 ‘ㅅ’ 보다 앞에 있으므로 ‘부산’이 ‘서울’ 보다 작은 값

연산자 의미
== 같다
!= 같지 않다
> 크다
>= 크거나 같다
< 작다
<= 작거나 같다
관계 연산자와 논리 연산자
Boolean

Boolean 끼리 ‘논리 연산자’를 사용할 수 있음


연산자 의미 설명
not 부정 Bool을 반대로 전환
두 피연산자가 모두 참일 때 True를 출력,
and 그리고
그 외에는 모두 False 출력
두 피연산자 중 하나만 참이라도 True를 출력,
or 또는
두 개 모두 거짓일 경우 False 출력

a b a and b a or b not a
True True True True False
True False False True False
False True False True True
False False False False True
관계 연산자와 논리 연산자
Boolean

Boolean 끼리 ‘논리 연산자’를 사용할 수 있음


• 조금 복잡한 논리 연산자
기본적으로 우선순위는 동일하기에, 왼쪽에서 오른쪽으로 계산
• 가장 높은 연산자 우선순위를 갖는 괄호( )를 사용하면 결과가
달라질 수 있음

a b a and b a or b not a
True True True True False
True False False True False
False True False True True
False False False False True
관계 연산자와 논리 연산자
Boolean

비교 연산을 위한 관계 연산자와 논리 연산자가


합쳐서 사용할 수 있음
• 비교를 위한 관계 연산의 결과 → True/False 로 나옴
• True/False들 사이의 논리 연산자 적용 가능
→ 결과는 True/False로 나옴
관계 연산자와 논리 연산자
Boolean

프로그램을 만들 때 and/or 같은 논리 연산자는


아래 같은 경우에 쓰임
• and 연산자는 두 개의 조건이 모두 만족해야
다음 task를 진행할 때 많이 쓰임
예 : 회원 가입할 때 모든 필수 입력 항목이 다 채워졌는지 검사할 때

• or 연산자는 여러 개의 조건 중 하나만 만족하면 다음 task를


진행할 때 많이 쓰임
예 : 온라인 결제 중 여러 카드사 중 A, B, C 카드사의 카드로
결제할 때만 무이자 할부를 해주는 조건을 적용할 때

You might also like