Я в основном закончил эту программу, за исключением последней части, где она должна отображаться
«Средняя оценка:»
а затем он должен сложить каждую оценку, затем подсчитать каждую, а затем разделить
сумма по количеству.
У меня проблема в том, что моя программа берет только последний класс , 70 и делит 70 на сколько фактических оценок , что составляет 3 класса.
Что должна сделать программа:
Оценка по математике - 100
Научный балл 90
Чтение составляет 70
Средний балл 86%
Но вместо этого его поговорка
Средний балл составляет 23%
(потому что он делает 70/3 вместо 260/3).
Я знаю, что это должно быть исправлено с помощью цикла, но я, честно говоря, понятия не имею, с чего начать с исправления этого.
Это код, который у меня есть:
gradesFile = open("grades.txt","r")
#Establishes the variables
total = 0
numberOfLines = 0
lines = 0
print('Here are your grades:','\n')
#Creates a loop that will print out each score
#Math score is 100
#Science score is 90
#and so on.
for line in gradesFile:
numberOfLines += 1
lines = line.strip()
total = (gradesFile.readline())
average = float(total) / (numberOfLines)
print(lines + ' score is ' + total)
gradesFile.close
print('The average score is', average)
Я супер новичок в этом.
Edit:
Файл grades.txt выглядит следующим образом. (1-7 означает каждую строку)
1 Математика
2 100,0
3 Наука
4 90,0
5 Чтение
6 70,0
7