# Упражнения за извънаудиторна заетост

#### Задача 1:

Създайте клас Работник (Employee) , който има следните атрибути:

·        Име на фирмата в която работи (статичен)

·        Брой работници  (статичен) (инкрементира се при създаване на нов работник)

·        Име (видим за наследник)

·        Фамилия (видим за наследник)

·        ЕГН (private)

·        Град (видим за наследник)

·        Заплата (private)

&#x20;

И методи:

·        Методи за достъп, в зависимост от спецификатора за достъп;

·         Конструктори;

·         метод за текстово представяне на обекта;

·        Заплата, който връща 0;

·        статичен метод който връща общия брой работници, като приема параметър масив от работници.



#### Задача 2:

Създайте клас Мениджър (Manager), който наследява клас Работник и има следните атрибути:

·        Сектор (private)

Методи:

·        Методи за достъп, в зависимост от спецификатора за достъп;

·        Конструктори;

·        метод за текстово представяне на обекта;

·        Метод „заплата“ който презаписва метода заплата на родителския клас, като връща стойността на атрибута заплата.

·        Метод „заработка“, който приема два параметъра – брой работни дни и заработка за един работен ден;

·        Метод „заработка“, който приема един параметър –заработка за един работен ден и връща умножение на заработката за един работен ден с 22 работни дни;

#### Задача 3:

Създайте клас Чиновник – със следните атрибути:

·        Допълнителен процент;

·        Сектор(private);

Следните методи:

·        Методи за достъп, в зависимост от спецификатора за достъп;

·        Конструктори;

·        метод за текстово представяне на обекта;

·        Метод „заплата“ който презаписва метода заплата на родителския клас, като връща стойността на атрибута заплата с добавените допълнителни проценти към заплатата.

·        Метод за общ трудов стаж без параметър , който връща в години трудовия стаж (изчислени спрямо годината на раждане на чиновника, като се приеме , че е започнал работа на 23 години);

·        Метод за общ трудов стаж с един параметър от тип String, който показва колко години не е работил чиновника ( тези години трябва да се извадят от общия трудов стаж);

·         Метод за общ трудов стаж с един параметър от double , който показва колко години не е работил чиновника ( тези години трябва да се извадят от общия трудов стаж);

#### Задача 4:

Да се създаде клас, който съдържа main метод:

\-         Да се създадат 2 мениджъра и да се изведе текстовото представяне на обектите;

\-         Да се изчисли заплатата на мениджъра;

\-         Да се изчисли каква е заработката му при 18 работни дни и при пълен работен месец

&#x20;

\-         Да се създадат 4 чиновника и да се изведе текстовото представяне на обектите;

\-         Да се изчисли заплатата на всеки един от чиновниците

\-         Да се изведе трудовия стаж на всеки работник, като двама от тях имат пропуснати съответно 2 и 3 години ( да се изпозлват трите различни метода)

\-         Да се изведе колко работника има в цялата фирма

\-         Да се изведе името на фирмата в която работят всички работници.
