codeFlowType:
codeWrite
codeFlowLang:
Python
Создать консольное приложение на Python, которое позволяет вести учет успеваемости студентов. Программа должна позволять вводить данные о студентах, курсах и оценках, а также выводить отчет по успеваемости каждого студента.
Вот пример простого консольного приложения на Python, которое позволяет вести учет успеваемости студентов.
class Student:
def __init__(self, name):
self.name = name
self.grades = {}
def add_course(self, course, grade):
self.grades[course] = grade
def get_average_grade(self):
if not self.grades:
return 0
return sum(self.grades.values()) / len(self.grades)
def __str__(self):
return f"Студент: {self.name}, Оценки: {self.grades}, Средний балл: {self.get_average_grade():.2f}"
class GradeBook:
def __init__(self):
self.students = {}
def add_student(self, name):
if name not in self.students:
self.students[name] = Student(name)
def add_grade(self, name, course, grade):
if name in self.students:
self.students[name].add_course(course, grade)
else:
print(f"Студент {name} не найден.")
def print_report(self):
for student in self.students.values():
print(student)
def main():
gradebook = GradeBook()
while True:
print("\nМеню:")
print("1. Добавить студента")
print("2. Добавить оценку")
print("3. Вывести отчет по успеваемости")
print("4. Выход")
choice = input("Выберите действие (1-4): ")
if choice == "1":
name = input("Введите имя студента: ")
gradebook.add_student(name)
print(f"Студент {name} добавлен.")
elif choice == "2":
name = input("Введите имя студента: ")
course = input("Введите название курса: ")
grade = float(input("Введите оценку: "))
gradebook.add_grade(name, course, grade)
elif choice == "3":
print("\nОтчет по успеваемости:")
gradebook.print_report()
elif choice == "4":
print("Выход из программы.")
break
else:
print("Некорректный выбор, попробуйте снова.")
if __name__ == "__main__":
main()
Класс Student:
add_course
позволяет добавлять курс и его оценку.get_average_grade
вычисляет средний балл студента.__str__
возвращает строковое представление студента.Класс GradeBook:
add_student
добавляет нового студента.add_grade
добавляет оценку для конкретного студента.print_report
выводит отчет по успеваемости всех студентов.Функция main:
Для запуска программы, сохраните код в файл с расширением .py
и выполните его в командной строке:
python your_file_name.py
Замените your_file_name.py
на имя вашего файла.