一次考試中,於所有及格學生中獲取最低分數者最為幸運,反之,於所有不及格同學中,獲取最高分數者,可以說是最為不幸,而此二種分數,可以視為成績指標。

請你設計一支程式,讀入全班成績(人數不固定),請對所有分數進行排序,並分別找出不及格中最高分數,以及及格中最低分數。

當找不到最低及格分數,表示對於本次考試而言,這是一個不幸之班級,此時請你印出「worst case」;反之,當找不到最高不及格分數時,請你印出「best case」。

(註:假設及格分數為 60)。

輸入說明
第一行輸入學生人數,第二行為各學生分數 (0~100 間),分數與分數之間以一個空白間格。
每一筆測資的學生人數為 1~20 的整數。

輸出說明
每筆測資輸出三行。

第一行由小而大印出所有成績,兩數字之間以一個空白間格,最後一個數字後無空白;
第二行印出最高不及格分數,如果全數及格時,於此行印出 best case ;
第三行印出最低及格分數,如果全數不及格時,於此行印出 worst case 。


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# 輸入學生數量
student = int(input())
# 輸入各學生的成績,並將它們轉換為整數列表
grade_list = list(map(int, input().split()))
# 對成績列表進行排序
grade_list.sort()
# 將排序後的成績列表輸出
print(*grade_list)

# 檢查列表中最低分數是否大於 60 分
if grade_list[0] > 60:
# 如果最低分數大於 60 分,輸出 "best case" 和最低分數
print("best case")
print(grade_list[0])
# 檢查列表中最高分數是否小於 60 分
elif grade_list[student - 1] < 60:
# 如果最高分數小於 60 分,輸出最高分數和 "worst case"
print(grade_list[student - 1])
print("worst case")
else:
i = 0
# 尋找小於 60 中最高的數字
while grade_list[i] < 60:
# 將當前成績賦值給變數 temp
temp = grade_list[i]
i += 1

# 輸出最後一個小於 60 分的成績和下一個成績 grade_list[i]
print(temp)
print(grade_list[i])

b964. 第 1 題 成績指標



作者: 微風