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

3.5 KiB

Общее контрольное задание по теме 9

Махнов Георгий, А-01-23

Задание

Создайте и запишите в модуль класс, содержащий следующие компоненты:

  • конструктор, задающий четырем атрибутам (fio, otdel, dolzhnost, oklad), представляющим фамилии сотрудников, название отделов, названия должностей сотрудников и размеры их окладов, некоторые начальные значения;
  • метод для обеспечения операции повышения оклада сотрудника на заданное значение;
  • метод для обеспечения перевода сотрудника из одного отдела в другой;
  • метод для изменения должности сотрудника;
  • свойство, содержащее перечень (список) поощрений сотрудника. Создайте 2 экземпляра класса, задайте им некоторые значения атрибутов и свойства. Отобра-зите эти значения. Попробуйте с этими экземплярами операции перевода из отдела в отдел, изменения должности и оклада, объявления благодарности.

Выполнение


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
Глава кафедры
['Лучший результат в сфере обучения студентов по кафедре']