编写一个要求用户输入五个测试分数的程序.对应于字母等级



dester_grade-接受单个数字作为参数,并根据以下等级显示分数的字母等级:

Score 90-100 80-89 70-79 60-69 Below 60
Letter Grade A
B
C
D
F
  • calc_average-将等级列表作为参数列表,并显示得分的平均值,以及等同于该平均值的字母等级。
  • 主 - 要求用户输入五个测试分数,并将其作为数字列入列表
  • shymletters - 用户带有字母等量等效的用户输入的Echo打印

按每个主要步骤写评论。这是程序的示例运行:

输入成绩:65,80,90,71,85

65.0 is D
80.0 is B
90.0 is A
71.0 is C
85.0 is B

平均值为:78.2是c

def main():
    enter code herescores = input("Enter five test scores seperated by commas:")
    listScores = scores.split(",")`enter code here`
    determine_grade(listScores)
    calc_average(listScores)
def determine_grade(grades):
    for num in grades:
        if int(num) >= 90 and int(num) <= 100:
            print("A")
        elif int(num) >=80 and int(num) <= 89:
            print("B")
        elif int(num) >=70 and int(num) <= 79:
            print("C")
        elif int(num) >=60 and int(num) <= 69:
            print("D")
        else:
            print("F")

def calc_average(grades):
    total = 0
    for num in grades:
        total += int(num)
    average = total / 5
    print(average)

#def show_letters(values):
main()

这是我到目前为止所拥有的,但似乎无法弄清楚如何格式化它?

此格式化以您要格式化它的方式:

def main():
    scores = input("Enter five test scores separated by commas: ")
    return [int(num) for num in scores.split(",")]

def determine_grade(num):
    if 90 <= num <= 100:
        letter_grade = "A"
    elif 80 <= num <= 89:
        letter_grade = "B"
    elif 70 <= num <= 79:
        letter_grade = "C"
    elif 60 <= num <= 69:
        letter_grade = "D"
    else:
        letter_grade = "F"
    return letter_grade

def calc_average(grades):
    average = sum(grades) / len(grades)
    grade = determine_grade(average)
    print("The average is: {:.1f} which is {}".format(average, grade))

def show_letters(num, letter_grade):
    print("{:.1f} is {}n".format(num, letter_grade))

lst = main()
for n in lst:
    show_letters(n, determine_grade(n))
calc_average(lst)

最新更新