본문 바로가기

Python_Matter/COS Pro

YBM Python Test Level 2 - 학점 계산

Q>

문제 설명
XX 학교에서는 다음과 같이 학생들의 점수에 따라 학점을 부여합니다.

85점 ~ 100점 : A 학점
70점 ~ 84점 : B 학점
55점 ~ 69점 : C 학점
40점 ~ 54점 : D 학점
0점 ~ 39점 : F 학점
학생들의 점수가 들어있는 배열 scores가 매개변수로 주어질 때, A 학점, B 학점, C 학점, D 학점, F 학점을 받은 학생들의 수를 배열에 순서대로 담아 return 하도록 solution 함수를 작성하려 합니다. 빈칸을 채워 전체 코드를 완성해주세요.

- 매개변수 설명
학생들의 점수가 들어있는 배열 scores가 solution 함수의 매개변수로 주어집니다.
* scores의 길이는 1 이상 200 이하입니다.
* 학생들의 점수는 0 점 이상 100점 이하의 정수입니다.

 

- return 값 설명
solution 함수는 [A 학점 학생 수, B 학점 학생 수, C 학점 학생 수, D 학점 학생 수, F 학점 학생 수] 를 순서대로 

배열에 담아 return 합니다.

- 예시

scores result
[86,72,98,60,45] [2,1,1,1,0]


- 예시 설명
예시 #1
주어진 학생들의 점수는 다음과 같이 학점을 받습니다.

A 학점 : [86점, 98점] 2명
B 학점 : [72점] 1명
C 학점 : [60점] 1명
D 학점 : [45점] 1명
F 학점 : 0 명
따라서 [2,1,1,1,0] 을 return 하면 됩니다.

 

A>

def solution(scores):
    grade_counter = [0 for i in range(5)]           # 학생들의 수를 세기 위한 리스트를 [0, 0, 0, 0, 0]으로 초기화
    for x in scores:
        if x >= 85:                                 # A학점
            grade_counter[0] += 1
        elif x >= 70:                               # B학점
            grade_counter[1] += 1
        elif x >= 55:                               # C학점
            grade_counter[2] += 1
        elif x >= 40:                               # D학점
            grade_counter[3] += 1
        else:                                       # F학점
            grade_counter[4] += 1
    return grade_counter

print(solution([86, 72, 98, 60, 45]))

 

F>

Quiz4.py
0.00MB

 

W>

https://programmers.co.kr/learn/courses/33