форкнуто от main/python-labs
main
Родитель
914f5bc920
Сommit
35322e8142
@ -0,0 +1,76 @@
|
|||||||
|
# Общее контрольное задание по Теме 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
|
||||||
|
|
||||||
|
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
|
||||||
|
```
|
||||||
Загрузка…
Ссылка в новой задаче