본문 바로가기

Programming Language/Python( 파이썬 )

파이썬 if문/ elif/ def(함수)/ 조건문 예시 : 간단한 학점 분류 프로그램 만들기

반응형

 

 

 

 

 

Q. 900,000명의 등급을

점수 기준에 따라 다르게 주세요.

 

 

 

만약 이런 조건이 주어진다면 단순 작업인데 너무 너무 너~~~~~~~~무 힘들것입니다.

이런 단순 작업을 파이썬 언어를 통해 해결하고자 한다면 어떻게 할까요?

 

예를 들어, 학생이 20명 있고, 이 학생들을 점수에 따라 등급을 분류하는 프로그램을 짜야한다고 생각해봅시다.

지금 당장은 학생이 20명이면 금방 점수를 기준으로 등급을 메길 수 있을겁니다.

 

 

그런데 만약 학생이 8000명 , 900,000 이상으로 늘어난다면?

이런 불편함이 컴퓨터 프로그래밍 언어가 발전하게 된 이유입니다.

파이썬 언어로는 if(조건문) 와 def(함수)의 활용하여 해결이 가능합니다.

 

 

 

우선 if / elif / else 이렇게 구성되긴 하지만, 저는 if + else 문을 먼저 보고 ! 그 이후 elif 문을 보는 것으로 진행해보겠습니다. (어차피 조건이 추가되면 그 부분을 추가해주면 되는 것이라서 간단하게 볼 수 있습니다! )

 

 

 

1. if문

 

if문의 경우도 조건부분과 실행 부분을 나눠서 정해줄 수 있습니다.

if 부분과 else 부분을 나누어 조건을 만족할 시 그 부분을 실행 시키고, 불만족할 시 아래 부분을 실행시키는 방식 입니다.

 

 

예시) if 문을 활용해 단순 제품추천 식을 짜본다고 생각해봅시다.

 

총점 80점이 넘는다면 이 제품을 추천하고,

못 넘는다면 추천하지 않는 프로그램'

if문(조건문)

recommand_score = 90     #내가 받은 점수

if recommand_score >= 80:
    print("이 제품을 추천한다.")
else:
    print("제품을 추천하지 않는다.")

 

 

 

지금 추천 점수는 90점 이므로, if문의 실행 부분이 작동하여 '이 제품을 추천한다.'가 print 된 것을 확인할 수 있습니다. 그렇다면 만약 80점 미만이면 어떻게 작동할까요? 당연히 밑의 그림처럼 else 문이 실행됩니다.

 

 

 

2. elif문

 

단순 if문의 경우 하나의 조건을 만족하는 식을 만들고 실행할 수 있었습니다.

그렇다면 조건이 중간에 하나가 더 있다면 ??!?

if문을 계속해서 써야할까요? 아닙니다! 이럴 경우 쓰는 것이 elif문입니다. else + if로 이해하시면 이해하기 편할 것 같습니다. 그렇다면 추천 점수를 기준으로

 

'80점 이상은 강력 추천 !

60 이상은 추천 !

40 이상은 보통 !

나머지는 추천 안함!'

을 출력해주는 프로그램

추천해보는 파이썬 식을 짜보겠습니다. 아까 식에서 조금만 변화시키면 가능합니다.

# elif 반복문(if문)

recommand_score = 60    #추천하는 점수

if recommand_score >= 80:
    print("강력 추천합니다")
elif 80 > recommand_score >= 60 :
    print("추천합니다")
elif 60 > recommand_score >= 40 :
    print("보통입니다")
else :
    print("추천하지 않습니다")

 

if 부분과 else 부분은 우리가 위에서 확인을 했으니깐, elif 부분을 중심으로 공부해보시면 됩니다.

어려운 것 전혀 없이 if문과 같은 들여쓰기에서 바로 작성해줍니다!

 

60점을 기준으로 실행한 값입니다.

 

 

 

 

 

3. def 파이썬 함수 활용

위의 예시에선 우리가 점수를 지정해 주었는데, 이것을 점수가 들어가면 알아서 분류 및 추천해주는 함수가 있다면 우리가 고생하는 것이 좀 줄어들겠죠?

이 인간의 수고로움을 덜어주기 위해 개발된 것이 프로그래밍 언어이기에 !!

def (함수)는 잘 사용하면 우리의 반복적인 작업을 줄여줍니다.

그러면 ! 아까 우리가 작성해놓은 조건문을 def(함수)를 지정해서 한번 확인해보도록 합시다.

# def 와 if를 결합! 

def program (recommand_score):
    if recommand_score >= 80:
        print("강력 추천합니다")
    elif 80 > recommand_score >= 60 :
        print("추천합니다")
    elif 60 > recommand_score >= 40 :
        print("보통입니다")
    else :
        print("추천하지 않습니다")

 

'program' 이라는 함수를 지정하고 우리가 작성해놓은 if 조건문을 그 안에 들여쓰기 해서 넣습니다.

그리고, 원래 조건문 밖에서 지정해주던 점수 변수도 program 안에 들어가서 함수를 이용하는 누구라도 점수가 있다면 추천 프로그램이 출력되게 만들어 줍니다.

즉, 함수를 이용하여 우리가 지정한 점수가 아니라, 이 프로그램을 이용하는 사람의 상황에 맞게 만듦으로써 우리수고로움이 줄어들었죠 !

그리고 밑에 함수를 이용하는 값을 입력해봅니다.

# def 공부 및 확인

def program (recommand_score):
    if recommand_score >= 80:
        print("강력 추천합니다")
    elif 80 > recommand_score >= 60 :
        print("추천합니다")
    elif 60 > recommand_score >= 40 :
        print("보통입니다")
    else :
        print("추천하지 않습니다")

#def (함수) 실행 테스트 

program(50)
print('--------------------')
program(99)
print('--------------------')
program(20)

 

 

 

결과 값을 보니 제대로 작동하는 것을 볼 수 있습니다 !!

이렇게 if / elif 조건문 과 def를 활용하여 우리가 만든 점수 기반 제품 추천 프로그램도 만들어 봤습니다.

 

 

 

4. 파이썬 학점 계산기 간단한 프로그램 만들어보기

def grade_program(mid_score, last_score):
    total = mid_score + last_score
    if total >= 85 :
        print("당신의 학점은 A입니다.")
    elif 85> total >= 65:
        print("당신의 학점은 B입니다.")
    elif 65> total >= 35:
        print("당신의 학점은 C입니다.")
    elif 35> total >= 15:
        print("당신의 학점은 D입니다.")
    else :
        print("당신의 학점은 F입니다.")
    


# 예시를 통한 프로그램 확인
grade_program(50, 45)
grade_program(40, 30)
grade_program(15, 32)
grade_program(5, 5)

 

이건 간단한 점수 기반 학점 출력 프로그램입니다.

우리가 배운 내용을 토대로 똑같이 활용하고 점수와 출력 문장을 변경해주었고, 크게 다른 점은 total이라는 변수를 지정해주어 def 안에 중간 점수와 기말 점수를 더해주고 그 값을 저장해줬습니다.

 

이것 또한 좋은 예제가 될 수 있겠네요 ! if 문과 def를 공부하신다면 이 두가지 예시를 통해서 연습해보시면 되겠습니다.

 

 

 

저의 티끌 코딩 글이 블로그 방문자 님의 코딩에 조금이라도 도움이 됐으면 좋겠습니다 !

글 하단 '좋아요(♡)' 마우스 클릭 한번과 댓글은 글 작성자에게 너무 큰 힘이 됩니다. 감사합니다.

 

반응형