2017-07-11 39 views
0

我正在写一个python程序,它会降低四个测试分数中最低的。该程序首先提示用户输入他们的前四个测试分数,然后该程序应该降低最低测试分数并取其余三个测试分数的平均值。该程序应该打印最后的字母等级。这是我迄今为止所做的,并且在降低最低分数时我一直收到错误。删除最低的测试分数

#Enter four test scores as percentages (%) 
test1 = int(input("Enter grade 1: 90")) 
test2 = int(input("Enter grade 2: 80")) 
test3 = int(input("Enter grade 2: 70)") 
test4 = int(input("Enter grade 2: 80)") 

#Drop lowest test score 
    print("The average, with the lowest score dropped") 
    total =(test1 + test2 + test3) 

#Calculate average 
     def calc_average(total): 
     return total /3 


#Grade scale 
def determine_score(grade): 
    if score >= 90: 
     grade = "A" 
    elif score >= 80: 
     grade = "B" 
    elif score >=70: 
     grade = "C" 
    elif score >= 60: 
     grade = "D" 
    else: 
     grade = "F" 

#Calculate final letter grade 
print("The final grade is") 


main() 
+1

嗯......你知道,空格/制表符是*非常*显著在Python中,对不对? –

+0

这是我的第一个编码课,所以我还在学习。我会采取任何建设性的批评和建议! –

+0

你会得到什么错误? – mkrieger1

回答

1

我试着用我从你那里了解的东西编写一个程序。 以下是解释:

从用户处取得四个等级。 删除最低的一个。平均值为 。 根据平均值给出字母等级。

下面是代码:

test1 = int(input("Enter grade 1: ")) 
test2 = int(input("Enter grade 2: ")) 
test3 = int(input("Enter grade 3: ")) 
test4 = int(input("Enter grade 4: ")) 

x = min(test1,test2,test3,test4) 

total = float(test1 + test2 + test3 + test4 - x) 

avg = total/3 

print("Your average is " + str(avg)) 


def determine_letter(grade): 
    letter ="" 
    if grade >= 90: 
     letter = "A" 
    elif grade >= 80: 
     letter = "B" 
    elif grade >= 70: 
     letter = "C" 
    elif grade >= 60: 
     letter = "D" 
    else: 
     letter = "F" 

    print("The final letter grade is " + letter) 


determine_letter(avg) 
+0

这工作!谢谢! –

+0

不客气。你可以从这里了解更多关于Python的知识。 http://introcs.cs.princeton.edu/python/home/ –