Тема: Объектно-ориентированное программирование (ООП) в Python
Задание: Реализация класса "Студент"
Создайте класс "Студент" с атрибутами:
Имя
Фамилия
Возраст
Список оценок (список чисел от 1 до 10)
Реализуйте методы класса:
Метод для вычисления среднего балла студента.
Метод для добавления новой оценки в список.
Создайте несколько экземпляров класса "Студент" и протестируйте их методы, например:
Создайте студента с именем "Иван", фамилией "Иванов", возрастом 18 и списком оценок [8, 9, 7, 10, 8].
Вычислите средний балл студента и выведите результат.
Попробуйте добавить новую оценку студенту и снова вычислить средний балл.
Это задание поможет вам отработать основные принципы объектно-ориентированного программирования в Python. Успехов!
Ответы
Ответ:
Объяснение:
class Студент:
def __init__(self, имя, фамилия, возраст, оценки):
self.имя = имя
self.фамилия = фамилия
self.возраст = возраст
self.оценки = оценки
def средний_балл(self):
return sum(self.оценки) / len(self.оценки)
def добавить_оценку(self, оценка):
self.оценки.append(оценка)
Теперь вы можете создать экземпляр класса “Студент” и использовать его методы:
студент = Студент("Иван", "Иванов", 18, [8, 9, 7, 10, 8])
print(студент.средний_балл()) # Выведет средний балл студента
студент.добавить_оценку(10) # Добавит новую оценку в список оценок студента
print(студент.средний_балл()) # Выведет новый средний балл студента после добавления оценки
Код ниже:
# Определение класса "Студент"
class Student:
# Конструктор класса
def __init__(self, name, surname, age, grades):
# Атрибуты класса
self.name = name # Имя
self.surname = surname # Фамилия
self.age = age # Возраст
self.grades = grades # Список оценок
# Метод для вычисления среднего балла студента
def average_grade(self):
# Сумма всех оценок
total = sum(self.grades)
# Количество оценок
count = len(self.grades)
# Средний балл
average = total / count
# Возвращаем средний балл
return average
# Метод для добавления новой оценки в список
def add_grade(self, grade):
# Проверяем, что оценка в диапазоне от 1 до 10
if grade >= 1 and grade <= 10:
# Добавляем оценку в список
self.grades.append(grade)
else:
# Выводим сообщение об ошибке
print("Оценка должна быть от 1 до 10")
# Создаем студента с именем "Иван", фамилией "Иванов", возрастом 18 и списком оценок [8, 9, 7, 10, 8]
ivan = Student("Иван", "Иванов", 18, [8, 9, 7, 10, 8])
# Вычисляем средний балл студента и выводим результат
print(f"Средний балл Ивана: {ivan.average_grade()}")
# Попробуем добавить новую оценку студенту и снова вычислить средний балл
ivan.add_grade(9)
print(f"Средний балл Ивана после добавления новой оценки: {ivan.average_grade()}")
В соответствии с кодексом чести znanija использовать ответы во время конкурсных заданий запрещено.