Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Pracownik
- {
- String nazwisko;
- double etat;
- String grupa;
- public Pracownik(String n, double e){
- nazwisko=n;
- etat=e;
- }
- double wyplata(){
- return 0;
- }
- public boolean equals(Pracownik prac){
- return this.nazwisko==prac.nazwisko;
- }
- }
- ======================================
- public class Robotnik extends Pracownik
- {
- double godz;
- double stawka;
- static double limit=180;
- public Robotnik(double g, double st, String n, double e){
- super(n,e);
- godz=g;
- stawka=st;
- grupa="robotnik";
- }
- double wyplata(){
- double wyp;
- if(godz<limit){
- wyp=(godz*stawka)*etat;
- } else {wyp=(((godz-limit)*1.5*stawka)+limit*stawka)*etat;
- }
- return wyp;
- }
- }
- -----------------------------
- class Urzednik extends Pracownik
- {
- double placa;
- double premia;
- public Urzednik(double pl, double pr, String n, double e){
- super(n,e);
- placa=pl;
- premia=pr;
- grupa="urzędnik";
- }
- double wyplata(){
- double wyp;
- wyp=(placa+(premia*placa))*etat;
- return wyp;
- }
- }
- -------------------------------------
- public class Firma
- {
- Pracownik [] tab;
- int ile;
- boolean jest;
- public Firma(int i){
- ile=i;
- tab=new Pracownik[ile];
- }
- void przyjmijPracownika(Pracownik prac){
- for(int i=0; i<tab.length; i++){
- if(tab[i]==null){
- tab[i]=prac;
- break;
- }
- }
- }
- void wyswietlPrac(){
- System.out.println("Lista osób zatrudnionych(ogółem):");
- for(int i=0; i<tab.length; i++){
- System.out.println((i+1)+"."+" "+tab[i].nazwisko+", "+tab[i].grupa+", "+"etat: "+tab[i].etat);
- }
- System.out.println();
- }
- void wyswietlUrz(){
- int lic=0;
- System.out.println("Lista zatrudnionych urzędników:");
- for(int i=0; i<tab.length; i++){
- if(czyJestUrzednikiem2(tab[i])==true){
- lic++;
- System.out.println((lic)+"."+" "+tab[i].nazwisko+", "+"etat: "+tab[i].etat);
- }
- }
- System.out.println();
- }
- void wyswietlRob(){
- int lic=0;
- System.out.println("Lista zatrudnionych robotników:");
- for(int i=0; i<tab.length; i++){
- if(czyJestRobotnikiem2(tab[i])==true){
- lic++;
- System.out.println((lic)+"."+" "+tab[i].nazwisko+", "+"etat: "+tab[i].etat);
- }
- }
- System.out.println();
- }
- void wyswietlPlace(){
- System.out.println("Lista płac:");
- for(int i=0; i<tab.length; i++){
- System.out.println((i+1)+"."+" "+tab[i].nazwisko+", "+tab[i].grupa+", "+"etat: "+tab[i].etat+", "+"płaca: "+tab[i].wyplata()+" PLN");
- }
- System.out.println();
- }
- public Pracownik[] pokazFirme(){
- return tab;
- }
- public boolean czyJestUrzednikiem(Pracownik prac){
- jest=false;
- if(prac instanceof Urzednik){jest=true;
- System.out.println("Tak, pracownik "+prac.nazwisko+" jest urzędnikiem");
- System.out.println(); }
- else{System.out.println("Nie, pracownik "+prac.nazwisko+" nie jest urzędnikiem");
- System.out.println(); }
- return jest;
- }
- public boolean czyJestUrzednikiem2(Pracownik prac){
- jest=false;
- if(prac instanceof Urzednik){jest=true;}
- return jest;
- }
- public boolean czyJestRobotnikiem(Pracownik prac){
- jest=false;
- if(prac instanceof Robotnik){jest=true;
- System.out.println("Tak, pracownik "+prac.nazwisko+" jest robotnikiem");
- System.out.println(); }
- else{System.out.println("Nie, pracownik "+prac.nazwisko+" nie jest robotnikiem");
- System.out.println(); }
- return jest;
- }
- public boolean czyJestRobotnikiem2(Pracownik prac){
- jest=false;
- if(prac instanceof Robotnik){jest=true;}
- return jest;
- }
- public Pracownik znajdzPracownika(String n){
- Pracownik x=null;
- for(int i=0; i<tab.length; i++){
- if(n==tab[i].nazwisko){x=tab[i];
- return x;}
- }
- return x;
- }
- double sumaWyplat(){
- double sum=0;
- for(int i=0; i<tab.length; i++){
- sum+=tab[i].wyplata();
- }
- System.out.println("Suma wypłat wynosi "+sum+" PLN");
- System.out.println();
- return sum;
- }
- public int ileJestUrz(){
- int licznik=0;
- for(int i=0; i<tab.length; i++){
- if(czyJestUrzednikiem2(tab[i])==true){licznik=licznik+1;}
- }
- System.out.println("Zatrudnionych jest "+licznik+" urzędników");
- System.out.println();
- return licznik;
- }
- public int ileJestRob(){
- int licznik=0;
- for(int i=0; i<tab.length; i++){
- if(czyJestRobotnikiem2(tab[i])==true){licznik=licznik+1;}
- }
- System.out.println("Zatrudnionych jest "+licznik+" robotników");
- System.out.println();
- return licznik;
- }
- double sumaWyplatUrz(){
- double sum=0;
- for(int i=0; i<tab.length; i++){
- if(czyJestUrzednikiem2(tab[i])==true){
- sum+=tab[i].wyplata();
- }
- }
- System.out.println("Suma wypłat urzędników wynosi "+sum+" PLN");
- System.out.println();
- return sum;
- }
- double sumaWyplatRob(){
- double sum=0;
- for(int i=0; i<tab.length; i++){
- if(czyJestRobotnikiem2(tab[i])==true){
- sum+=tab[i].wyplata();
- }
- }
- System.out.println("Suma wypłat robotników wynosi "+sum+" PLN");
- System.out.println();
- return sum;
- }
- double wyplataDanegoPrac(Pracownik prac){
- double wyplata=prac.wyplata();
- System.out.println("Wypłata pracownika "+prac.nazwisko+" wynosi: "+wyplata+" PLN");
- System.out.println();
- return wyplata;
- }
- public void usuwaniePrac(String n) {
- Pracownik[] tab1= new Pracownik[tab.length-1]; int i=0; int idx=0;
- for( i=0; i<tab1.length; i++) {
- tab1[i]=tab[i];
- }
- for( int k=0; k<tab1.length; k++) {
- if(tab1[k].nazwisko==n){tab1[k]=tab[tab.length-1];}
- }
- System.out.println("Usunięcie pracownika "+n);
- System.out.println();
- tab=tab1;
- }
- }
- ------------------------------------
- public class Test
- {
- public static void main (){
- Firma firma =new Firma(5);
- firma.przyjmijPracownika(new Urzednik(1000, 0.1, "Kowalski", 1));
- Robotnik rob=new Robotnik(120, 15, "Nowak", 0.5);
- firma.przyjmijPracownika(rob);
- Urzednik urz=new Urzednik(1200, 0.2, "Ratajczak", 0.75);
- firma.przyjmijPracownika(urz);
- firma.przyjmijPracownika(new Urzednik(1500, 0.1, "Górniak", 0.25));
- firma.przyjmijPracownika(new Robotnik(200, 10, "Kowal", 1));
- firma.wyswietlPrac();
- firma.wyswietlUrz();
- firma.wyswietlRob();
- firma.wyswietlPlace();
- firma.wyplataDanegoPrac(rob);
- firma.sumaWyplatUrz();
- firma.sumaWyplatRob();
- firma.sumaWyplat();
- firma.czyJestUrzednikiem(rob);
- firma.czyJestUrzednikiem(urz);
- firma.ileJestUrz();
- firma.ileJestRob();
- firma.usuwaniePrac("Nowak");
- firma.wyswietlPrac();
- firma.wyswietlUrz();
- firma.wyswietlRob();
- firma.ileJestRob();
- firma.ileJestUrz();
- firma.wyswietlPlace();
- firma.sumaWyplatUrz();
- firma.sumaWyplatRob();
- firma.sumaWyplat();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement