2017-07-11 38 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/ –