참일 경우 앞이 출력, 불인 경우 뒤가 출력
num1 = 10
num2 = 100
numResult = True if num1> num2 else False
print('num1 > num2: {}'.format(numResult))
OR
print('num1 > num2 크다') if numResult else print('num2> num1')
실습
**국어, 영어, 수학 점수를 입력하면 조건식을 이용해서 과목별 결과와 전체 결과를 출력하는 코드를 작성해보자. (과목별 합격 점수: 60점, 전페 합격 평균 점수: 70점)**
import operator
passScore = 60
passAvgScore = 70
kor = int(input('국어 점수: '))
eng = int(input('영어 점수: '))
math = int(input('수학 점수: '))
totalScore = kor + eng + math
avg = totalScore/3
print('국어: PASS')if operator.gt(kor, passScore) else print('국어: FAIL')
print('영어: PASS')if operator.gt(eng, passScore) else print('영어: FAIL')
print('수학: PASS')if operator.gt(math, passScore) else print('수학: FAIL')
print('시험: PASS')if operator.gt(avg, passAvgScore) else print('시험: FAIL')
print('총점: %d, 평균: %.2f' % (totalScore, avg))
if문 -> 단일조건
실습
**실내 온도를 입력하고 온도가 28도 이상이면 '냉방 작동', 20도 이하면 '난방 작동'이 출력되는 코드를 작성하자**
highTem = 28
lowTem = 20
insideTem = int(input('실내 온도 입력: '))
if insideTem <= lowTem:
print('난방 작동')
if insideTem >= highTem:
print('냉방 작동')
if my_score >= pass_score:
print('PASS')
else:
print('FAIL')
실습
**소수점 첫 번째 자리에서 반올림하는 프로그램을 만들어 보자.**
floatNum = float(input('소수 입력: '))
if floatNum - int(floatNum) >= 0.5:
print('{}: {}'.format('올림',floatNum+1))
else:
print('{}: {}'.format('버림', int(floatNum)))
주의할 점:
조건식 순서가 중요하다.
조건 범위를 명시한다.
example_score = int(input('시험 성적 입력: '))
grades = ' '
if example_score >= 90:
grades = 'A'
elif example_score >= 80:
grades = 'B'
elif example_score >= 70:
grades = 'C'
elif example_score >= 60:
grades = 'D'
else:
grades = 'F'
print('성적: {} \t 학점: {}'.format(example_score, grades))
반복문 이란?
특정 실행을 반복한느 것. 반복문을 사용하면 프로그래밍이 간결하고 유지 보수가 쉽다.
for i in range(1,20):
print('{} * {} = {}'.format(5,i,(5*i))
for i in range(10):
result = 7 * i
print('{} * {} = {}'.format(7,i,result))
range() 기본 사용 방법
range(시작, 끝, 단계)
ex) range(1,11,1) -> 1부터 10까지 1씩 증가
단계 매개변수 생략 -> 단계가 1인 경우 생략 가능, 시작이 0인 경우 생략 가능
n = 1
while n< 10:
result = 7 * n
print('{} * {} = {}'.format(7,n, (7*n)))
n += 1
실습
multi = int(input('희망 구구단 입력: '))
n = 1
while n < 10:
result = multi * n
print('{} * {} = {}'.format(multi, n, result))
n += 1
무한 반복 실형 논리형 데이터 사용 실습
**하루에 독감으로 병원에 내방하는 환자 수가 50명에서 100명 사이일 때, 누적 독감 환자 수가 최초 10,000명을 넘는 날짜를 구해보자.**
import random
flag = True
sum = 0
date = 0
while flag:
dayPatient = random.randint(50,100)
sum += dayPatient
date += 1
print('날짜: {}, \t 오늘 환자 수: {}, \t 누적 환자수: {}'.format(date, dayPatient, sum))
if sum >= 10000:
flag = False
반복 실행 중 continue를 만나면 실행을 생략하고, 다음 반복 실행문으로 넘어간다.
for i in range(100):
if i % 7 != 0:
continue
print('{}는 7의 배수 입니다.'.format(i))
반복문이 종료된 후 실행된다.
cnt = 0
for i in range(1,100):
if i % 7 != 0:
continue
print('{}는 7의 배수 입니다.'.format(i))
cnt += 1
else:
print('99까지의 정수 중 7이 배수는 {}입니다.'.format(cnt))
반복 실행 중 break를 만나면 반복문을 빠져나온다.
sum = 0
searchNum = 0
for i in range(100):
sum += i
if sum > 100:
searchNum = i
break
print('searchNum = {}'.format(searchNum ))
실습
**새끼 강아지 체중이 2.2KG이 넘으면 이유식을 중단하려고 한다. 한번 이유식을 먹을 때 체주이 70g 증가한다고 할 때, 예상되는 이유식 날짜를 구하자. (현재 체중은 800g)**
limitedWeight = 2200
curentWeight = 800
date = 1
while True:
date += 1
curentWeight += 70
if curentWeight >= limitedWeight:
break
print('이유식 중단 날짜: {}'.format(date))
반복문안에 또 다른 반복문을 선언한다.
for i in range(1,10):
for j in range(i):
print('*', end='')
print()
실습
**구구단 전체 출력**
for i in range(1,10):
for j in range(2,10):
result = j * i
print('{} * {} = {}\t'.format(j,i,result),end= '')
print()