이 교육과정은 교육부 ‘성인학습자 역량 강화 교육콘텐츠 개발'사업의 일환으로써 교육부로부터 예산을 지원 받아 고려사이버대학교가 개발하여 운영하고 있습니다.
제공하는 강좌 및 학습에 따르는 모든 산출물의 적작권은 교육부, 한국교육학술정보원, 한국원격대학협의외와 고려사이버대학교가 공동 소유하고 있습니다.
설명하고 이를 활용할 수 있다.
2 for문(반복문)에 대해 설명하고 이를 활용할 수 있다.
3 while문(반복문)과 break문에 대해 설명하고 이를 활용할 수 있다.
1 조건문
2 비교/논리연산자
3 반복문(for)
4 반복문(while)
5 break문
4 반복문(while)
5 break문
하시겠어요?
출처 : https://www.freepik.com
아메리카노 10잔이요!
아메리카노 한 잔요!
아메리카노 한 잔요!
아메리카노 한 잔요!
아메리카노 한 잔요!
아메리카노
한 잔요! 아메리카노 한 잔요!
아메리카노 한 잔요!
아메리카노 한 잔요!
아메리카노 한 잔요!
아메리카노 한 잔요!
INE LEARNING FOR PRACTICAL USE
출처 : https://www.freepik.com
덥다면 춥다면
‘만약 ~하면 ~ 하다’와같은 상황에서 사용 조건문
: 조건에 따라 다른 프로그램 코드를 실행
사용 예
만약 점수가 80점 이상이면 합격이고 80점 미만이면 불합격이다.
만약 나이가 65세 이상일 경우에는 입장료가 무료이다.
주민번호 앞자리가 1이면 남성이다.
비밀번호가 맞으면 로그인된다.
CHINE LEARNING FOR PRACTICAL USEMACHINE LEARNING FOR PRACTICAL USE
만약 입력한 비밀번호가 맞다면
로그인
자격증 시험 점수가 70점 이상이면 합격, 70점 미만이면 불합격
****
PASSWORD
****
PASSWORD
LOGIN FAIL PASS FAIL
80 60
INE LEARNING FOR PRACTICAL USE
if~
만약
입력한 비밀번호가 맞다면
로그인 된다if~
else~
만약
입력한 비밀번호가 맞다면
로그인 되고 그렇지 않다면
경고 메시지를 띄운다
MACHINE LEARNING FOR PRACTICAL USE
만약
입력한 비밀번호가 맞다면
로그인 되고if~
elif~
else~
입력한 비밀번호가 1자리수만 틀렸다면
다시 입력하라는 경고를 띄우고 그렇지 않다면
경고 메시지를 띄운다
CHINE LEARNING FOR PRACTICAL USE
양수 판별하기
num = int(input('판별할 숫자를 입력하세요 : '))
if num > 0 :
print('입력한 숫자는 양수입니다.') 콜론(:)
잊지 말기
:: 실행 결과
판별할 숫자를 입력하세요 : 20 입력한 숫자는 양수입니다.
들여쓰기필수!
if문 활용하기
MACHINE LEARNING FOR PRACTICAL USE
양수/음수 판별하기
num = int(input('판별할 숫자를 입력하세요 : '))
if num > 0 :
print('입력한 숫자는 양수입니다.') else :
print('입력한 숫자는 0 또는 음수입니다') :: 실행 결과
판별할 숫자를 입력하세요 : -2 입력한 숫자는 0 또는 음수입니다
if~ else~문 활용하기
INE LEARNING FOR PRACTICAL USE
양수/음수/0 판별하기
num = int(input('판별할 숫자를 입력하세요 : '))
if num > 0 :
print('입력한 숫자는 양수입니다.') elif num == 0 :
print('입력한 숫자는 0입니다') else :
print('입력한 숫자는 음수입니다')
:: 실행 결과
판별할 숫자를 입력하세요 : 3 입력한 숫자는 양수입니다.
if~ elif~ else~문 활용하기
MACHINE LEARNING FOR PRACTICAL USE
비교 연산자 논리 연산자
> <
>=
<=
== !=
and or
not
CHINE LEARNING FOR PRACTICAL USE
a > b
a는 b보다 크다a < b
a는 b보다 작다a == b
a와 b는 같다a != b
a와 b는 같지 않다a >= b
a는 b보다 크거나 같다a <= b
a는 b보다 작거나 같다비교 연산자 설명
비교 연산자
MACHINE LEARNING FOR PRACTICAL USE
조건1 and 조건2
조건1과 조건2 둘 다 참이어야 전체 결과가 참조건1 or 조건2
조건1과 조건2 중 하나만 참이어도 전체 결과가 참not 조건
조건이 참이면 그 결과는 거짓, 조건이 거짓이면 그 결과는 참논리 연산자 설명
논리 연산자
INE LEARNING FOR PRACTICAL USE
x = 11 y = 2
print(x > 10) print(y <= 5)
print(x + y == 14) print(x % 3 == 0) print(y % 3 != 0)
print(x > 10 and y <= 5)
print(x > 10 and x + y == 14) print(x > 10 or x + y == 14)
:: 실행 결과 True True False False True True False True
CHINE LEARNING FOR PRACTICAL USE
차가운 아메리카노 주세요 차가운 아메리카노
주세요
차가운 아메리카노 주세요
차가운 아메리카노 주세요
차가운 아메리카노 주세요
차가운 아메리카노 주세요
차가운 아메리카노 주세요
차가운 아메리카노 차가운 아메리카노 주세요
주세요
차가운 아메리카노 주세요
차가운 아메리카노 10잔주세요
출처 : https://www.freepik.com
INE LEARNING FOR PRACTICAL USE
특정한 부분의 코드가
반복적으로 수행될 수 있도록 하는 구문
반복문의 두 종류
For문 While문
MACHINE LEARNING FOR PRACTICAL USE
for문
for 변수 in range():
반복할 코드
리스트, 튜플, 문자열도 가능
range() 함수 : 어떤 정수를 주면
그 범위 안의 정수들을 생성
CHINE LEARNING FOR PRACTICAL USE
for 변수 in range():
반복할 코드
for문
숫자 n개 생성 숫자를
하나씩 꺼냄
숫자를 꺼낼 때마다 코드 실행
MACHINE LEARNING FOR PRACTICAL USE
print('Hello, world!') print('Hello, world!') print('Hello, world!') print('Hello, world!') print('Hello, world!')
for i in range(5):
print('Hello, world!')
어떤 방법이 더 효율적일까?
:: 실행 결과
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
:: 실행 결과
Hello, world!
Hello, world!
Hello, world!
Hello, world!
Hello, world!
INE LEARNING FOR PRACTICAL USE
1~5까지의 합계 구하기
sum = 0
for i in range(1, 6) : sum += i
print('i의 값 : %d, 합계 : %d' % (i, sum)) :: 실행 결과
i의 값 : 1, 합계 : 1 i의 값 : 2, 합계 : 3 i의 값 : 3, 합계 : 6 i의 값 : 4, 합계 : 10 i의 값 : 5, 합계 : 15
MACHINE LEARNING FOR PRACTICAL USE
1~5까지의 합계 구하기
1 1 ← 0 + 1
2 3 ← 1 + 2
3 6 ← 3 + 3
4 10 ← 6 + 4 5 15 ← 10 + 5
반복 루프 i sum ← sum + i
출처 : 파이썬 입문 예제 중심, 황재호, 인포앤북, 141p
CHINE LEARNING FOR PRACTICAL USE
range() 함수의 활용
for i in range(5) : print(i, end =' ') print()
for i in range(1, 6) : print(i, end =' ') print()
:: 실행 결과 0 1 2 3 4 1 2 3 4 5
종료값
시작값
종료값
MACHINE LEARNING FOR PRACTICAL USE
range() 함수의 활용
for i in range(1, 10, 2) : print(i, end =' ') print()
for i in range(20, 0, -2) : print(i, end =' ')
:: 실행 결과 1 3 5 7 9
20 18 16 14 12 10 8 6 4 2
시작값 종료값
증가값
시작값 종료값
감소값
INE LEARNING FOR PRACTICAL USE
4의 배수의 합계
sum = 0
for i in range(1, 51) : if i%4 == 0 :
print('%d' % i, end = ' ') sum += i
print('\n')
print('[1~50에서 4의 배수의 합계] : %d' % sum) :: 실행 결과
4 8 12 16 20 24 28 32 36 40 44 48
[1~50에서 4의 배수의 합계] : 312
MACHINE LEARNING FOR PRACTICAL USE
세로로 문장 출력하기
word = input('세로로 출력할 문장을 입력하세요 : ')
for x in word :
print(x) :: 실행 결과
세로로 출력할 문장을 입력하세요 : 파이썬 파
이 썬
CHINE LEARNING FOR PRACTICAL USE
101 102 103 104 201 202 203 204 301 302 303 304 401 402 403 404 501 502 503 504
커피숍 주변의 회사에서 커피 배달 주문을 받았다.
1층부터 5층까지 순서대로 배달하는 방법은?
각 층에 올라가서 호실의순서대로 배달하기!
출처 : https://www.freepik.com
MACHINE LEARNING FOR PRACTICAL USE
for 변수 in range():
for 변수 in range():
반복할 코드
for문 내에 다시 for문이 있는 형태
INE LEARNING FOR PRACTICAL USE
구구단 출력하기
for i in range(2,10):
for j in range(1,10):
print(i*j, end=' ') print('')
:: 실행 결과
2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36
……
8 16 24 32 40 48 56 64 72 9 18 27 36 45 54 63 72 81
실습영상 삽입
INE LEARNING FOR PRACTICAL USE
열 번 찍어 안 넘어 가는
나무 없지!
찍었나?열 번 아직
계속 찍거라그럼
MACHINE LEARNING FOR PRACTICAL USE
while 조건 : 반복할 코드
10번 찍었는가?
계속해라아니면
CHINE LEARNING FOR PRACTICAL USE
tree = 0
while tree < 10:
tree = tree +1
print("나무를 %d번 찍었습니다." % tree) if tree == 10:
print("나무 넘어갑니다.")
https://wikidocs.net/21
열번찍어 안넘어 가는 나무 없다
MACHINE LEARNING FOR PRACTICAL USE
https://wikidocs.net/21
0 0 < 10 참 나무를 1번 찍었습니다. 반복
1 1 < 10 참 나무를 2번 찍었습니다. 반복
2 2 < 10 참 나무를 3번 찍었습니다. 반복
3 3 < 10 참 나무를 4번 찍었습니다. 반복
4 4 < 10 참 나무를 5번 찍었습니다. 반복
5 5 < 10 참 나무를 6번 찍었습니다. 반복
6 6 < 10 참 나무를 7번 찍었습니다. 반복
7 7 < 10 참 나무를 8번 찍었습니다. 반복
8 8 < 10 참 나무를 9번 찍었습니다. 반복
9 9 < 10 참 나무를 10번 찍었습니다.
나무 넘어갑니다. 반복
10 10 < 10 거짓 종료
tree 조건문 조건 판단 열번찍어 안넘어 가는 나무 없다
수행하는 문장 while문
:: 실행 결과
나무를 1번 찍었습니다.
나무를 2번 찍었습니다.
…
나무를 9번 찍었습니다.
나무를 10번 찍었습니다.
나무 넘어갑니다.
INE LEARNING FOR PRACTICAL USE
1~10까지의 합계
sum = 0 i = 1
while i <= 10 : sum += i
print('i의 값 : %d => 합계 : %d' % (i, sum)) i += 1
https://wikidocs.net/21
MACHINE LEARNING FOR PRACTICAL USE
https://wikidocs.net/21
1번째 1 1 <= 10 : 참 1 ← 0 + 1 2 ← 1 + 1
2번째 2 2 <= 10 : 참 3 ← 1 + 2 3 ← 2 + 1
3번째 3 3 <= 10 : 참 6 ← 3 + 3 4 ← 3 + 1
4번째 4 4 <= 10 : 참 10 ← 6 + 4 5 ← 4 + 1
5번째 5 5 <= 10 : 참 15 ← 10 + 5 6 ← 5 + 1 6번째 6 6 <= 10 : 참 21 ← 15 + 6 7 ← 6 + 1 7번째 7 7 <= 10 : 참 28 ← 21 + 7 8 ← 7 + 1 8번째 8 8 <= 10 : 참 36 ← 28 + 8 9 ← 8 + 1 9번째 9 9 <= 10 : 참 45 ← 36 + 9 10 ← 9 + 1 10번째 10 10 <= 10 : 참 55 ← 45 + 10 11 ← 10 + 1
11번째 11 11 <= 10 : 거짓 반복 루프를 빠져나감
반복 루프 I의 값 조건식(i<=10) :: 실행 결과sum = sum + i i = i + 1 i의 값 : 1 => 합계 : 1 i의 값 : 2 => 합계 : 3 i의 값 : 3 => 합계 : 6 i의 값 : 4 => 합계 : 10 i의 값 : 5 => 합계 : 15 i의 값 : 6 => 합계 : 21 i의 값 : 7 => 합계 : 28 i의 값 : 8 => 합계 : 36 i의 값 : 9 => 합계 : 45 i의 값 : 10 => 합계 : 55
CHINE LEARNING FOR PRACTICAL USE
언제까지나무를 찍어야하지?
그만하게이제
MACHINE LEARNING FOR PRACTICAL USE
If 조건 : break
조건에 맞다면!
정지하라실행을
INE LEARNING FOR PRACTICAL USE
1~10까지의 합계
i = 0
while True:
print(i) i += 1
if i == 50:
break
:: 실행 결과 0
1 2
… 47 48 49
- 조건문의 정의와 필요성
- 조건문의 종류와 활용하기
(if, if~else~, If~ elif~ else~)- 비교/논리연산자의 정의와 활용
반복문의 이해(for) - 반복문의 정의와 필요성
- for문, 이중 for문의 문법과 활용
반복문의 이해(while)
- while/break문의 정의와 필요성
- while/break문의 문법과 활용
A 학급에 총 10명의 학생이 있다.
이 학생들의 중간고사 점수는 다음과 같다.
[70, 60, 55, 75, 95, 90, 80, 80, 85, 100]
for문을 사용하여 A 학급의 평균 점수를 구해 보자.
파이썬 입문 예제 중심, 황재호, 인포앤북 점프 투 파이썬, 박응용, 이지스퍼블리싱 왕초보를 위한 Python,
위키독스(https://wikidocs.net/56)
서체 출처 : 에스코어드림체-㈜에스코어, 나눔글꼴체-㈜네이버, 경기천년체
• https://www.freepik.com
• https://pixabay.com/
이미지 출처