форкнуто от main/python-labs
Родитель
daf4a6f330
Сommit
ff799edf64
@ -0,0 +1,132 @@
|
|||||||
|
# Общее контрольное задание по теме 9
|
||||||
|
|
||||||
|
Филиппов Даниил Юрьевич, А-01-23
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Задание:
|
||||||
|
|
||||||
|
Создать и записать в модуль класс, содержащий следующие компоненты:
|
||||||
|
|
||||||
|
\- конструктор, задающий четырем атрибутам (fio, otdel, dolzhnost, oklad), представляющим фамилии сотрудников, название отделов, названия должностей сотрудников и размеры их окладов, некоторые начальные значения;
|
||||||
|
|
||||||
|
\- метод для обеспечения операции повышения оклада сотрудника на заданное значение;
|
||||||
|
|
||||||
|
\- метод для обеспечения перевода сотрудника из одного отдела в другой;
|
||||||
|
|
||||||
|
\- метод для изменения должности сотрудника;
|
||||||
|
|
||||||
|
\- свойство, содержащее перечень (список) поощрений сотрудника.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Создать 2 экземпляра класса, задать им некоторые значения атрибутов и свойства. Отобразить эти значения. Попробовать с этими экземплярами операции перевода из отдела в отдел, изменения должности и оклада, объявления благодарности.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Решение
|
||||||
|
|
||||||
|
```py
|
||||||
|
|
||||||
|
>>> class Employee:
|
||||||
|
|
||||||
|
... def \_\_init\_\_(self, fio="", otdel="", dolzhnost="", oklad=0):
|
||||||
|
|
||||||
|
... self.fio = fio
|
||||||
|
|
||||||
|
... self.otdel = otdel
|
||||||
|
|
||||||
|
... self.dolzhnost = dolzhnost
|
||||||
|
|
||||||
|
... self.oklad = oklad
|
||||||
|
|
||||||
|
... self.\_pooshchreniya = \[] # исправлено на единое имя
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
... def povyshenie\_oklad(self, summa):
|
||||||
|
|
||||||
|
... if summa > 0:
|
||||||
|
|
||||||
|
... self.oklad += summa
|
||||||
|
|
||||||
|
... return self.oklad
|
||||||
|
|
||||||
|
... else:
|
||||||
|
|
||||||
|
... print("Сумма для повышения оклада должна быть больше нуля.")
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
... def perevod(self, new\_otdel):
|
||||||
|
|
||||||
|
... self.otdel = new\_otdel
|
||||||
|
|
||||||
|
... return self.otdel
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
... def cmena\_dolzhnosty(self, new\_dolzhnost):
|
||||||
|
|
||||||
|
... self.dolzhnost = new\_dolzhnost
|
||||||
|
|
||||||
|
... return self.dolzhnost
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
... @property
|
||||||
|
|
||||||
|
... def pooshchrenia(self):
|
||||||
|
|
||||||
|
... return self.\_pooshchreniya # исправлено на единое имя
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
... def add\_pooshchrenie(self, pooshchrenie):
|
||||||
|
|
||||||
|
... self.\_pooshchreniya.append(pooshchrenie) # исправлено на единое имя
|
||||||
|
|
||||||
|
... print(f"Сотрудник {self.fio} теперь имеет поощрение: {pooshchrenie}")
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
...
|
||||||
|
|
||||||
|
>>> emp\_1=Employee ("Толчеев В.О.", "Кафедра Управления и информационных технологий", "Профессор", 150000)
|
||||||
|
|
||||||
|
>>> emp\_2=Employee ("Бобряков А.В.", "Кафедра Управления и информационных технологий", "Заведующий кафедрой", 1000000)
|
||||||
|
|
||||||
|
>>> emp\_2.perevod("МТУСИ")
|
||||||
|
|
||||||
|
'МТУСИ'
|
||||||
|
|
||||||
|
>>> emp\_2.povyshenie\_oklad(10000)
|
||||||
|
|
||||||
|
1010000
|
||||||
|
|
||||||
|
>>> emp\_1.cmena\_dolzhnosty("Заведующий кафедрой")
|
||||||
|
|
||||||
|
'Заведующий кафедрой'
|
||||||
|
|
||||||
|
>>> emp\_2.add\_pooshchrenie("Выслуга лет")
|
||||||
|
|
||||||
|
Сотрудник Бобряков А.В. теперь имеет поощрение: Выслуга лет
|
||||||
|
|
||||||
|
>>> emp\_1.add\_pooshchrenie("Лучший проект")
|
||||||
|
|
||||||
|
Сотрудник Толчеев В.О. теперь имеет поощрение: Лучший проект
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Загрузка…
Ссылка в новой задаче