본문 바로가기

연습장

[예제] Python 조건문 심화 예제 2 (if ~ elif ~ else 조건문)

그동안 소스코드 블로그 글에 첨부하는 기능을 몰라서 아쉬워하다가 드디어 알아냈다.

 

티스토리 플러그인 기능을 통해 아주 간단하게 코드를 첨부할 수 있게 됐다.

 

자 그럼 간단한 조건문 예제를 통해서 if ~ elif ~else 조건문을 배워보자.


먼저 if ~ elif ~ else 조건문을 설명하자면

 

if 조건1:

   행동1

elif 조건2:

   행동2

elif 조건3:

   행동3

else:

   행동4

 

위와 같은 형식으로 명령을 할 수 있다.

 

기존에 배운 조건문에서 더 세세하게 조건을 분류할 수 있는 것이다.

 

예를 들어,

컴퓨터의 가격이 100만원 초과면 하이엔드급, 100만원~50만원이면 메인스트림급, 50만원 미만이면 저가형 이라고 분류한다고 가정해보자.

 

이 경우 전에 배운 if~else문으로는 식을 다 표현할 수 없다.

 

왜냐면 if~else문은 조건 두 가지에 대해서만 사용할 수 있었기 때문이다.

 

하지만 if~elif~else문을 사용하면 위의 예시처럼 더 많은 조건에서도 사용할 수 있다.

price = int(input("컴퓨터가격?(만원단위로 입력"))

if price >100:
	print('하이엔드')
elif 100>price>50:
	print('메인스트림')
else:
	print('저가형')

이런 식으로 표현이 가능하다.

 


그럼 심화예제를 통해 더 연습해보자.

 

<심화예제>

학생의 영어점수와 수학점수를 사용해 학업능력을 평가하고자 한다.

만약 영어점수와 수학점수의 합이 110점을 넘으면 합격이고, 과락 점수는 40점이다.

합격여부를 출력해주는 프로그램을 작성해보자.

 

#if ~ elif ~ else 조건문 예제
#학생수준평가 합격여부 출력 프로그램
#조건1. 영어점수와 수학점수를 입력 받을 것
#조건2. 영어점수와 수학점수의 합이 110점이 넘으면 '합격' 출력
#조건3. 두 과목 점수의 합이 110미만이면 '불합격:총점미달' 출력
#조건4. 각 과목의 점수가 40점 미만이면 '불합격:해당과목' 출력

eng = int(input("영어점수?"))
math = int(input("수학점수?"))
total = eng + math

if total < 110:
    print('불합격:총점미달')
elif eng >= 40:
    if math >= 40:
          print('합격')
    else:
          print('불합격:수학미달')
else:
    print('불합격:영어미달')

 

[문제 출처] 창의적 프로그래밍을 위한 파이썬/생능출판사/한혁수/p.164