0 / 0 / 0
Регистрация: 12.12.2018
Сообщений: 13
1

Разработать класс Student

19.02.2019, 00:42. Показов 1618. Ответов 0

Author24 — интернет-сервис помощи студентам
Доброго времени суток! Помогите, пожалуйста, добить задачу, а то она добьет меня....(
Условие: Разработать класс Student, обьект которого должен содержать поля для сохранения имени, баллов за практические работы и за экзамен.
Методы:
1. Конструктор, который принимает строку - имя студента и дикт
conf = {
'exam_max': 30, # количество балов, доступное за здачу экзамена 
'lab_max': 7, # количество балов, доступное за выполнение 1 практической работы 
'lab_num': 10, # количество практических работ в курсе 
'k': 0.61, # коэфициент, который нужно набрать для успешного прохождения курса}.
2. Метод make_lab(m,n), который принимает 2 аргумента и возвращает ссылку на поточный обьект. Тут m -- количество баллов, набранное за выполнение задания (int, float), а n -- int, номер задания (лабы нумеруются от 0 до lab_num-1). При повторной сдаче защитывается последняя оценка. Если n не задано, имеется в виду сдача первого не выполненного задания. Если m>7, засчитывать 7, если n>9, балы не учитывать.
3. Метод make_exam(m), принимает оценку за экзамен (int), и возвращает ссылку на поточный обьект. При m>30 защипывать 30.
4. Метод is_certified(), возвращает тьюпл, состоящий из float (сумма баллов за прохождение курса), и True если коэффициент >=0.61 или False в противном случаи.


Моя попытка решения:

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
lass Student(object):
    
 
    def __init__(self, name, conf):
        self.conf = conf
        self.name = name
        self.labs = None
        self.exam = 0
        self.koef = 0
        self.sum_mark = 0
    
    def make_lab(self, m, n=0):
        if float(m) > float(self.conf['lab_max']):
            m = self.conf['lab_max']
        else:
            m = m
        #return m"""
        if n != 0 and (n+1) <= self.conf['lab_num']:
            self.labs.append(m[n])
        elif n==0:
            self.labs.append(m)
        return self.labs
 
            #return self.labs.append(m[n])
        #elif n == 0:
        #   return self.labs.append(m)
 
 
    def make_exam(self, m):
        
        if m > self.conf['exam_max']:
            self.exam = self.conf['exam_max']
        else:
            self.exam = m
        return self.exam
 
    def is_certified(self):
        self.sum_mark=sum(self.labs)+self.exam
        self.koef=self.sum_mark/100
        return tuple (self.sum_mark, self.koef>=self.conf['k'])
Заранее благодарю за помощь!

Добавлено через 1 час 5 минут
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
class Student(object):
    
 
    def __init__(self, name, conf):
        self.conf = conf
        self.name = name
        self.labs = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
        self.exam = 0
        self.koef = 0
        self.sum_mark = 0
    
    def make_lab(self, m, n=0):
        if (n+1)<= self.conf['lab_num']:
            if float(m) > float(self.conf['lab_max']):  
                self.labs[n] = self.conf['lab_max']
            else:
                self.labs[n] = m  
            return self
 
    def make_exam(self, m):
        
        if m > self.conf['exam_max']:
            self.exam = self.conf['exam_max']
        else:
            self.exam = m
        return self
 
    def is_certified(self):
        self.sum_mark=sum(self.labs)+self.exam
        self.koef=self.sum_mark/100
        return self.sum_mark, self.koef>=self.conf['k']
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.02.2019, 00:42
Ответы с готовыми решениями:

Разработать класс Student для представления сведений об успеваемости - Не проходят 2 тесты из 10 (Python 2.7.16)
Задание: Разработать класс Student для представления сведений об успешности слушателя курса...

Класс Student
Написать Python-программу для обработки данных о студентах учреждения высшего образования. В...

Определить класс с именем STUDENT
1. Создайте текстовый файл, каждая строка которого: фамилия имя оценки за 6 экзаменов оценки за 3...

Определить класс с именем STUDENT. Написание программы. Python
Доброго день! Из-за нехватки времени и неопытности, пожалуйста, помогите написать код :gsorry:. И...

Реализовать родительский класс Person и дочерний класс Student, который наследуется от Person
Реализовать родительский класс Person, который в качестве аргументов принимает имя, возраст и имеет...

0
19.02.2019, 00:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.02.2019, 00:42
Помогаю со студенческими работами здесь

Описать класс с именем STUDENT
1) Описать класс с именем STUDENT, содержащий следующие поля: фамилия и инициалы; номер группы;...

Создайте класс Student, содержащий поля: «ФИ», «Номер группы», «Успеваемость»
1)Создайте класс Student, содержащий поля: «ФИ», «Номер группы», «Успеваемость» (список из пяти...

Создать класс 'Group' и три производных класса 'Student', в которых, на основе полиморфизма, переопределяются методы
Создать класс 'Group' и три производных класса 'Student', в которых, на основе полиморфизма,...

Разработать класс Man (человек) и производный класс Student (студент). Описать атрибуты.
Разработать класс Man (человек) и производный класс Student (студент). Описать атрибуты.

Разработать класс Student и его методы
Пожалуйста, помогите решить следующую задачу: Разработать класс Student со следующими полями:...

Разработать класс STUDENT производный от класса PERSONA.
Доброго времени суток,проболел информацию в школе,напишите программу,пожалуйста Задание:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru