Windows 10
Python 3.11
Пишу задание из книги. Задание Звучит так, написать программу которая будет принимать буквенные оценки (А+,А,А-, и так далее до F) и будет переводить их в цифры.
Если пользователь введет другую букву то ему должно выдать "такой буквы нет" . После выполнения кода мне выдает
Traceback (most recent call last):
File "C:\Users\AVIRA\Desktop\python\exesise_2_7.py", line 25, in <module>
print("Ваш балл: %s" % o)
^
NameError: name 'o' is not defined
Process finished with exit code 1
хотя без последних трёх строк код работает исправно
Python 3.11
Пишу задание из книги. Задание Звучит так, написать программу которая будет принимать буквенные оценки (А+,А,А-, и так далее до F) и будет переводить их в цифры.
Если пользователь введет другую букву то ему должно выдать "такой буквы нет" . После выполнения кода мне выдает
Traceback (most recent call last):
File "C:\Users\AVIRA\Desktop\python\exesise_2_7.py", line 25, in <module>
print("Ваш балл: %s" % o)
^
NameError: name 'o' is not defined
Process finished with exit code 1
хотя без последних трёх строк код работает исправно
Python:
print("Перевод оценок с буквеных в числовые")
ocenka = input("Введите оценнку в виде буквы :").upper()
if ocenka == "A+" or ocenka == "A":
o = 4.0
if ocenka == "A-":
o = 3.7
elif ocenka == "B+":
o = 3.3
elif ocenka == "B":
o = 3.0
elif ocenka == "B-":
o = 2.7
elif ocenka == "C+":
o = 2.3
elif ocenka == "C":
o = 2.0
elif ocenka == "C-":
o = 1.7
elif ocenka == "D+":
o = 1.3
elif ocenka == "D":
o = 1.0
elif ocenka == "F":
o = 0
print("Ваш балл: %s" % o)
bukvi = ["A+", "A", "A-", "B+", "B", "B-", "C+", "C", "C-", "D+", "D", "F"]
if ocenka not in bukvi:
print(" Такой буквы нет")