Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

80 строки
3.5 KiB
Markdown

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

# Общее контрольное задание по теме 9
Махнов Георгий, А-01-23
## Задание
Создайте и запишите в модуль класс, содержащий следующие компоненты:
- конструктор, задающий четырем атрибутам (fio, otdel, dolzhnost, oklad), представляющим фамилии сотрудников, название отделов, названия должностей сотрудников и размеры их окладов, некоторые начальные значения;
- метод для обеспечения операции повышения оклада сотрудника на заданное значение;
- метод для обеспечения перевода сотрудника из одного отдела в другой;
- метод для изменения должности сотрудника;
- свойство, содержащее перечень (список) поощрений сотрудника.
Создайте 2 экземпляра класса, задайте им некоторые значения атрибутов и свойства. Отобра-зите эти значения. Попробуйте с этими экземплярами операции перевода из отдела в отдел, изменения должности и оклада, объявления благодарности.
## Выполнение
```py
class Workposition:
def __init__(self, fio = "Иванов И.И.", otdel = "Моделирование", dolznost = "Младший помощник", oklad = 20000):
self.fio = fio
self.otdel = otdel
self.dolznost = dolznost
self.oklad = oklad
self.__rewards = []
def raise_money(self, amount_on = int):
if amount_on > 0:
print("YAY")
self.oklad += amount_on
else:
print("Сумма увеличения должна быть больше 0!")
def position_place(self, new_place = str):
self.otdel = new_place
def position_post(self, new_post = str):
self.dolznost = new_post
@property
def reward(self):
return self.__rewards
def get_reward(self, get_reward=str):
self.__rewards.append(f"Поощрение сотрудника: {get_reward}")
employee1 = Workposition("Толчеев В.О.", "Кафедра Управления и информационных технологий", "Профессор", 120000)
employee2 = Workposition("Бобряков А.В.", "Кафедра Управления и информационных технологий", "Заведующий кафедрой", 150000)
print(employee1.fio, employee2.fio)
employee2.position_place("МГТУ")
print(employee2.otdel)
print(f"До повышения: {employee1.oklad}")
employee1.raise_money(20000)
print(f"После повышения: {employee1.oklad}")
employee2.position_post("Глава кафедры")
print(employee2.dolznost)
employee2.get_reward("Лучший результат в сфере обучения студентов по кафедре")
print(employee2.reward)
>>>Толчеев В.О. Бобряков А.В.
МГТУ
До повышения: 150000
YAY
После повышения: 170000
Глава кафедры
['Лучший результат в сфере обучения студентов по кафедре']
```