Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Main.java
- package com.company;
- import java.util.*;
- import static com.company.Pracownik.zwolnij;
- public class Main {
- public static void main(String[] args) {
- Pracownik[] pracownik = new Pracownik[15];
- pracownik[1] = new Tester("pelny", "Malachowski", 4300);
- pracownik[2] = new Manager("pelny", "Kowalewski", 7900, 0);
- pracownik[3] = new Tester("3/5", "Treskowski", 3100);
- System.out.println("Liczba pracowników na ten moment:" + Pracownik.liczba_pracownikow);
- dodaj_pracownika(pracownik);
- System.out.println("Liczba pracowników na ten moment:" + Pracownik.liczba_pracownikow);
- zwolnij(pracownik);
- System.out.println("Liczba pracowników na ten moment:" + Pracownik.liczba_pracownikow);
- System.out.println("Wyliczona premia dla Managera : " + Manager.oblicz_premie(pracownik, 1));
- }
- public static void dodaj_pracownika(Pracownik []pracownik){
- Scanner wejscie = new Scanner(System.in);
- if(pracownik.length > Pracownik.liczba_pracownikow){
- System.out.println("Podaj czy pracownik jest Testerem, czy Managerem: ");
- String etat = wejscie.nextLine();
- System.out.println("Podaj jakie jest nazwisko pracownika: ");
- String nazwisko = wejscie.nextLine();
- System.out.println("Podaj jaka jest pensja danego pracownika: ");
- int pensja = wejscie.nextInt();
- if(etat.equals("Manager")){
- System.out.println("Jaki dodatek otrzymuje dany Manager: ");
- int dodatek = wejscie.nextInt();
- pracownik[Pracownik.liczba_pracownikow] = new Manager(etat, nazwisko, pensja, dodatek);
- }
- else{
- System.out.println("Zatem dany pracownik jest Testerem");
- pracownik[Pracownik.liczba_pracownikow] = new Tester(etat, nazwisko, pensja);
- }
- }
- else{
- System.out.println("Liczba pracowników jest za duża, wynosi w tym momencie: " + pracownik.length);
- }
- }
- }
- //Pracownik.java
- package com.company;
- import java.util.*;
- public abstract class Pracownik{
- String etat;
- String nazwisko;
- int pensja;
- public static int liczba_pracownikow = 0;
- Pracownik(String et, String naz, int pen)
- {
- this.etat = et;
- this.pensja = pen;
- this.nazwisko = naz;
- liczba_pracownikow++;
- }
- public static void zwolnij(Pracownik []pracownik){
- Random generator = new Random();
- liczba_pracownikow--;
- generator.nextInt(Pracownik.liczba_pracownikow);
- System.out.println("Zwolnionego pracownika zastąpi: " + pracownik[generator.nextInt(Pracownik.liczba_pracownikow)].nazwisko);
- }
- public abstract void wynagrodzenie();
- }
- //Manager.java
- package com.company;
- public class Manager extends Pracownik{
- int dodatek_do_pensji;
- public Manager(String et, String naz, int pen, int dod) {
- super(et, naz, pen);
- this.dodatek_do_pensji = dod;
- }
- public static int oblicz_premie(Pracownik []pracownik, int n) {
- if (pracownik[n] instanceof Manager){
- return 450;
- }
- else{
- return 200;
- }
- }
- public void wynagrodzenie(){}
- }
- //Tester.java
- package com.company;
- public class Tester extends Pracownik {
- public Tester(String et, String naz, int pen) {
- super(et, naz, pen);
- }
- public void wynagrodzenie(){}
- }
Advertisement
Add Comment
Please, Sign In to add comment