# Общее контрольное задание по Теме 9 Таболин Иван, А-01-23 ## Задание Создайте и запишите в модуль класс, содержащий следующие компоненты: - конструктор, задающий четырем атрибутам (fio, otdel, dolzhnost, oklad), представляющим фамиилии сотрудников, название отделов, названия должностей сотрудников и размеры их окладов, некоторые начальные значения; - метод для обеспечения операции повышения оклада сотрудника на заданное значение; - метод для обеспечения перевода сотрудника из одного отдела в другой; - метод для изменения должности сотрудника; - свойство, содержащее перечень (список) поощрений сотрудника. Создайте 2 экземпляра класса, задайте им некоторые значения атрибутов и свойства. Отобразите эти значения. Попробуйте с этими экземплярами операции перевода из отдела в отдел, изменения должности и оклада, объявления благодарности. ## Решение ```py class Workers: def __init__(self,fio='',otdel='',dolznost='',oklad=0): self.fio=fio self.otdel=otdel self.dolznost=dolznost self.oklad=oklad self.__poos=[] def pov_oklad(self,uvel): self.oklad+=uvel print('Сотрудник', self.fio, 'теперь имеет оклад', self.oklad) return self.oklad def perevod(self,new_otdel): self.otdel=new_otdel print('Сотрудник', self.fio, 'переведен в отдел', self.otdel) return self.otdel def new_dolznost(self,new_dolzn): self.dolznost=new_dolzn print('Сотрудник', self.fio, 'переведен на должность', self.dolznost) return self.dolznost @property def view_poos(self): print('Поощрения сотрудника', self.fio) print(self.__poos) return self.__poos def add_poos(self, new_poos): self.__poos.append(new_poos) ``` Тестирование ```py worker1=Workers('TabolinIA','IVTI','bakalavr_3',2400) worker2=Workers('BerezhkovDA','IVTI','bakalavr_3',2400) print('ФИО:', worker1.fio,'\n', 'Должность:',worker1.dolznost,'\n', 'Институт:', worker1.otdel,'\n', 'Оклад (стипендия):', worker1.oklad) ФИО: TabolinIA Должность: bakalavr_3 Институт: IVTI Оклад (стипендия): 2400 worker1.new_dolznost('bakalavr_4') Сотрудник TabolinIA переведен на должность bakalavr_4 'bakalavr_4' print('ФИО:', worker1.fio,'\n', 'Должность:',worker1.dolznost,'\n', 'Институт:', worker1.otdel,'\n', 'Оклад (стипендия):', worker1.oklad) ФИО: TabolinIA Должность: bakalavr_4 Институт: IVTI Оклад (стипендия): 2400 worker2.perevod('GPI') Сотрудник BerezhkovDA переведен в отдел GPI 'GPI' worker2.pov_oklad(worker2.oklad*2) Сотрудник BerezhkovDA теперь имеет оклад 7200 7200 print('ФИО:', worker2.fio,'\n', 'Должность:',worker2.dolznost,'\n', 'Институт:', worker2.otdel,'\n', 'Оклад (стипендия):', worker2.oklad) ФИО: BerezhkovDA Должность: bakalavr_3 Институт: GPI Оклад (стипендия): 7200 worker1.add_poos('Благодарность 08.12.2025') worker1.view_poos Поощрения сотрудника TabolinIA ['Благодарность 08.12.2025'] ```