• 검색 결과가 없습니다.

03-1

N/A
N/A
Protected

Academic year: 2022

Share "03-1"

Copied!
39
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

03-1 불리언 자료형과 if 조건문

(2)

• Boolean

• 불리언

• True와 False 값만 가질 수 있음

• 비교 연산자를 통해 만들 수 있음

시작하기 전에

(3)

불리언 만들기 : 비교 연산자

• 숫자 또는 문자열에 적용

(4)

• 문자열에도 비교 연산자 적용 가능

불리언 만들기 : 비교 연산자

(5)

• 불리언끼리 논리 연산자 사용 가능

• not 연산자

• 단항 연산자

• 참과 거짓 반대로 바꿈

불리언 연산하기 : 논리 연산자

(6)

• 예시 – not 연산자 조합하기

불 연산하기 : 논리 연산자

(7)

• and 연산자와 or 연산자

• and 연산자는 양쪽 변의 값이 모두 참일 때만 True를 결과로 냄

• and 연산자

• or 연산자

불 연산하기 : 논리 연산자

(8)

• if 조건문

• 조건에 따라 코드 실행하거나 실행하지 않게 할 때 사용하는 구문

• 조건 분기

if 조건문이란

(9)

• 예시 – 조건문의 기본 사용

if 조건문이란

(10)

• 예시 – 날짜/시간 출력하기

datetime.datetime.now() 함수

날짜 / 시간 활용하기

(11)

• 예시 – 날짜/시간을 format()를 사용하여 한 줄로 출력하기

날짜 / 시간 활용하기

(12)

• 예시 – 오전과 오후를 구분하여 출력하기

날짜 / 시간 활용하기

(13)

Lab: 졸업 학점 검사하기

>>> age = 20

>>> height = 180

>>> if( (age>=10) and (height>=165)) :

print("놀이 기구를 탈 수 있습니다.")

else :

print("놀이 기구를 탈 수 없습니다.")

놀이 기구를 탈 수 있습니다.

(14)

• 어떤 대학교를 졸업하려면 적어도 140학점을 이수해야 하고 평점이 2.0은 되어야 한 다고 하자. 이것을 파이썬 프로그램으로 검사해보자.

사용자에게 이수학점수와 평점 을 물어보고 졸업 가능 여부를 출력 하는 프로그램을 작성해보자.

Lab: 졸업 학점 검사하기

이수한 학점수를 입력하시오

: 120

평점을 입력하시오

: 2.3

졸업이 힘듭니다

!

credits = int(input('

이수한 학점수를 입력하시오

: ')) gpa = float(input('

평점을 입력하시오

: '))

if credits >= 140 and gpa >=2.0:

print('

졸업 가능합니다

!') else:

print('

졸업이 힘듭니다

!')

(15)

• if 조건문의 형식

• 예시 – 나머지 연산자를 활용한 짝수와 홀수 구분

컴퓨터의 조건

(16)

• 예시 – 계절을 구분하는 프로그램

날짜 / 시간 활용하기

(17)

날짜 / 시간 활용하기

(18)

끝자리로 짝수와 홀수 구분

(19)

• 예시 – 끝자리로 짝수와 홀수 구분

끝자리로 짝수와 홀수 구분

(20)

• 예시 - in 연산자를 활용한 수정

컴퓨터의 조건

(21)

• 조건이 참인 경우에 여러 개의 문장이 실행되어야 한다면 어떻게 하여 야 하는가?

컴퓨터의 조건

(22)

• 사용자로부터 숫자 두 개를 입력받고 첫 번째 입력받은 숫자가 큰지, 두 번째 입력받은 숫자가 큰지를 구하는 프로그램을 다음 빈칸을 채 워 완성해 보세요.

확인문제

(23)

• else 구문

• if 조건문 뒤에 사용하며, if 조건문의 조건이 거짓을 때 실행되는 부분

• 조건문이 오로지 두 가지로만 구분될 때 if else 구문을 사용하면 조건 비 교를 단 한번만 하므로 이전의 코드보다 두 배 효율적

else 조건문의 활용

(24)

• 예시 – if 조건문에 else 구문 추가해서 짝수와 홀수 구분

else 조건문의 활용

(25)

• elif 구문

elif 구문

(26)

• elif 구문

• 세 개 이상의 조건을 연결해서 사용

• if 조건문과 else 구문 사이에 입력

elif 구문

(27)

• 예시 – 계절 구하기

elif 구문

(28)

• 조건문의 활용

• 예시

if 조건문을 효율적으로 사용하기

(29)

if 조건문을 효율적으로 사용하기

위에서 제외된 조건을 한 번 더 검사하여 비효율적

(30)

if 조건문을 효율적으로 사용하기

하위 값만 검사하고 상위 값은 검사를 생략

조건 비교를 반으로 줄이고 코드 가독성 향상됨

(31)

중첩 if-else

• if-else 문장 안에 다른 if-else 문장을 넣을 수 있다.

(32)

중첩 if-else

• 예 - 마트에서 사과가 신선하면 사과를 사기로 한다. 만약 사과가 개 당 1000원 미만이면 10개를 산다. 하지만 사과가 개당 1000원 이상이 면 5개만 산다.

appleQuality = input("

사과의 상태를 입력하시오

: ")

applePrice = int(input("

사과

1

개의 가격을 입력하시오

: ")) if appleQuality == "

신선

":

if applePrice < 1000:

print("10

개를 산다

") else:

print("5

개를 산다

") else:

print("

사과를 사지 않는다

.")

(33)

중첩 if-else

• 예 - 아이디를 입력 받아서 등록된 아이디인지를 검사하는 프로그램 을 작성해보자.

• 등록된 아이디를 리스트(user_list)에 저장한다.

• 입력한 아이디가 저장된 아이디 리스트와 일치하면 패스워드를 물어본 다.

• in 연산자를 사용하여 코드를 작성할 것 아이디를 입력하시오

: hong

패스워드를 입력하시오

: 12345678

환영합니다

.

(34)

중첩 if-else

user_list =['

김철수

', '

홍길동

', '

김영희

']

name=input('

아이디

: ') if name in user_list:

password = input('

패스워드를 입력하시오

: ')

if password == '12345678':

print('

환영합니다

.') else:

print('

잘못된 패스워드입니다

. ')

else :

print('

알 수 없는 사용자입니다

!')

(35)

• 빈 컨테이너

• if 조건문의 매개변수에 불리언 아닌 다른 값이 올 때 자동으로 불리언으 로 변환

• 이 때 False로 변환되는 값: None, 0.0, 빈 문자열, 빈 바이트열, 빈 리스트

False 로 변환되는 값

(36)

• 나중에 구현하고자 구문을 비워 두는 경우

pass 키워드

(37)

• IndentationError

if 조건문 사이에는 무조건 들여쓰기 4칸 넣고 코드 작성해야 함

• pass 키워드

• 아무것도 작성하지 않고 임시적으로 비워 둠

pass 키워드

(38)

• 가위, 바위, 보 게임을 작성하시오.

• 컴퓨터는 난수를 발생시켜서 가위, 바위, 보 중에서 하나를 선택한다.

• 이를 위해 random을 임포트한다.

• 난수는 random.randint(범위 시작, 범위 종료) 함수를 이용하여 발생시 킨다. (예) 0, 1을 난수로 발생시키기 à random.randint(0, 2)

조건문 문제

(39)

조건문 문제

참조

관련 문서

- 현재 환율의 변화는 기대수익률에 어떻게 영향을 미치는가 : 다른 모듞 조건이 읷정하다면, 국내통화의 젃하는 외국통 화예금의 국내통화표시 기대수익률을

두 개의 조건이 만족되는 초기상태서 시작하여 적어도 한 개의 조건이 위반될

우리의 정신문법 속에는 모든 문장이 하나하나 존재 하기보다는 어휘부와 위와 같이 문장(또는 구)을 만 드는 규칙의 형태로 들어 있지 않을까.. 위의 규칙

- 주파수가 동일하고 위상이 다른 여러 개의 기전력이 같은 회로계통내에 존재하는 교류방식..

타액은 단일 분비선에서만 분비되는 것이 아니라, 3 개의 대타액선과 여러 개의 소타액선에서 분비되며, 각 타액선에서 분비되는 타액의 조성은 서로 다르다. 타액의

– MultiAutoCompleteTextView 위젯 : 핚 입력 상자 안에서 여러 개의 항목 들에 대해 자동 완성 기능 제공. • 핚 문자열을 여러 개의

데이터로부터 무엇을 말하고자 하는가, 데이터가 사용되는 정황을 어떠한가, 에 대한 해답을 구하는 과정이다. 1.정보

18 그러나 현 재는 증상이 없는 PP의 경우에는 크기에 상관 없이 중재적 시술은 필요하지 않고 3∼6개월 간격으로 초음파검사를 통 Interstitial