"""Разработать класс Student для представления сведений об успешности слушателя некого курса.
Объект класса должен содержать поля для сохранения имени студента и баллов, полученных им за
выполнение практических заданий и финального экзамена. Обеспечить следующие методы класса:
* конструктор, принимающий строку - имя студента - и словарь, содержащий настройки курса в
следующем формате:
conf = {
"exam_max": 30 # количество баллов, доступное за сдачу экзамена
"lab_max ': 7, # количество баллов, доступное за выполнение 1 практической работы
"lab_num": 10 # количество практических работ в курсе
"k": 0.61, # доля баллов от максимума, которую необходимо набрать для получения сертификата
}
* метод make_lab (m, n), который принимает 2 аргумента и возвращает ссылку на текущий объект. Здесь
m - количество баллов набранное за выполнение задания (целое или действительное число), а n - целое
неотрицательное число, порядковый номер задания (лабы нумеруются от 0 до lab_num-1). При повторной
сдаче задачи засчитывается последняя оценка. Если n не задано, подразумевается сдача первого
невыполненного практического задания. Учесть, что во время тестирования система иногда дает сбои,
поэтому за выполнение задания может быть начислено больше баллов, чем это возможно по правилам
курса, не должно влиять на рейтинг студента. Кроме того, в системе могут содержаться дополнительные
задачи, чьи номера выходят за пределы 0..lab_num - конечно, баллы за них не должны засчитываться
для получения сертификата.
* метод make_exam (m), который принимает 1 аргумент - целое или действительное число - оценку за
финальный экзамен, и возвращает ссылку на текущий объект. Как и в случае с практическими задачами,
оценка за экзамен, в результате ошибки, иногда может превышать максимально допустимую.
* метод is_certified (), который возвращает tuple, содержащий действительное число (сумму баллов
студента за прохождение курса), и логическое значение True или False, в зависимости от того,
достаточно ли этих баллов для получения сертификата.
Так как курс доступен онлайн и не имеет дэдлайнов на сдачу работ, студент может выполнять работы в
произвольном порядке. Считать, что количество попыток на выполнение каждого из заданий ограничено.
"""


class SuccessStudentClass (StudentName, points):
    def make_lab (m, n):
        return

    def make_exam (m):
        return

    def is_certified ():
        return tuple