Я создаю простую систему регистрации. Как мне получить оценки от моей функции get_grade_points():
для переноса в мою функцию check_graduation():
?Ошибка параметров функции - отсутствует 1 требуемый позиционный аргумент
Вот код:
CS100 = 'CS100 - Introduction to Programming'
CS200 = 'CS200 - Advanced Programming'
CS300 = 'CS300 - Super Advanced Programming'
student_name = input('What is the students name?')
def main():
prompt1 = input('Has the student taken CS100? (enter y or n)')
if prompt1 == 'n':
print('The student needs to take all three CS courses')
total_courses = 1
def is_course_taken():
prompt2 = input('Has the student taken CS200(enter y or n)')
if prompt2 == 'n':
print('The student needs to take all three classes')
total_courses = 2
prompt3 = input('Has the student taken?(enter y or n)')
if prompt3 == 'n':
print('The student needs to take all three classes')
total_courses = 3
def get_grade_points():
A = 4
B = 3
C = 2
D = 1
F = 0
grade1 = input('What grade did the student recieve in CS100?' \
'(enter letter grade)')
grade2 = input('What grade did the student recieve in CS200?' \
'(enter letter grade)')
grade3 = input('What grade did the student recieve in CS300?' \
'(enter letter grade)')
def check_graduation(grade1, grade2, grade3):
gpa = (grade1 * grade2 * grade3) // 3
if gpa >= 2.5:
print('Graduation approved')
else:
print('Graduation not approved, GPA too low')
print(student_name)
print(total_courses)
print(gpa)
main()
is_course_taken()
get_grade_points()
check_graduation()
Я не могу понять, как получить имя студенты с самого начала и как получить оценки, чтобы умножать и рассчитать средний балл.
Если изменить функцию следующим образом:
def check_graduation(student_name, grade1, grade2, grade3)
интерпретатор Python дает мне:
TypeError: check_graduation() missing 1 required positional argument: 'get_grade_points'
Я пропустил это. Он получает вход, который является просто строкой ввода пользователем. Это не преобразование строк в числа. –