Advertisement
Glenpl

Untitled

Feb 9th, 2015
242
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.97 KB | None | 0 0
  1. #include <cstdlib>
  2. #include <iostream>
  3. #include <conio.h>
  4.  
  5. const int SREDNIA_KRAJOWA = 3600;
  6.  
  7. using namespace std;
  8.  
  9. class Pracownik;
  10. class Kurier;
  11. class Magazynier;
  12.  
  13. void porownaj_zarobki(Kurier, Magazynier);
  14.  
  15. class Pracownik
  16. {
  17. protected:
  18.     string imie;
  19.     string nazwisko;
  20.     int pensja;
  21. };
  22.  
  23. class Kurier :public Pracownik
  24. {
  25.     friend void porownaj_zarobki(Kurier, Magazynier);
  26.     string model_samochodu;
  27. public:
  28.     void wypisz_dane();
  29.     void pobierz_dane();
  30. };
  31.  
  32. class Magazynier :public Pracownik
  33. {
  34.     friend void porownaj_zarobki(Kurier, Magazynier);
  35.     int wymiar_pracy; // hours per week
  36. public:
  37.     void wypisz_dane();
  38.     void pobierz_dane();
  39. };
  40.  
  41. void Kurier::pobierz_dane()
  42. {
  43.     cout<<"Nowy pracownik: kurier"<<endl<<endl;
  44.     cout<<"Podaj imie: ";
  45.     cin>>imie;
  46.     cout<<"Podaj nazwisko: ";
  47.     cin>>nazwisko;
  48.     cout<<"Pensja: ";
  49.     cin>>pensja;
  50.     cout<<"Model samochodu: ";
  51.     cin>>model_samochodu;
  52.     cout<<endl;
  53. }
  54. void Kurier::wypisz_dane()
  55. {
  56.     cout<<"Imie: "<<imie<<endl;
  57.     cout<<"Nazwisko: "<<nazwisko<<endl;
  58.     cout<<"Stanowisko: kurier"<<endl;
  59.     cout<<"Pensja: "<<pensja<<endl;
  60.     cout<<"Model samochodu: "<<model_samochodu<<endl<<endl;
  61. }
  62. void Magazynier::pobierz_dane()
  63. {
  64.     cout<<"Nowy pracownik: magazynier"<<endl<<endl;
  65.     cout<<"Podaj imie: ";
  66.     cin>>imie;
  67.     cout<<"Podaj nazwisko: ";
  68.     cin>>nazwisko;
  69.     cout<<"Pensja: ";
  70.     cin>>pensja;
  71.     cout<<"Wymiar pracy: ";
  72.     cin>>wymiar_pracy;
  73.     cout<<endl;
  74. }
  75. void Magazynier::wypisz_dane()
  76. {
  77.     cout<<"Imie: "<<imie<<endl;
  78.     cout<<"Nazwisko: "<<nazwisko<<endl;
  79.     cout<<"Stanowisko: magazynier"<<endl;
  80.     cout<<"Pensja: "<<pensja<<endl;
  81.     cout<<"Wymiar pracy: "<<wymiar_pracy<<" godzin w tygodniu"<<endl<<endl;
  82. }
  83.  
  84. void porownaj_zarobki(Kurier worker1, Magazynier worker2)
  85. {
  86.     cout<<"\n\nDANE POROWNYWANYCH PRACOWNIKOW: \n\n";
  87.     cout<<"Pracownik pierwszy: \n";
  88.     worker1.wypisz_dane();
  89.     cout<<"Pracownik drugi: \n";
  90.     worker2.wypisz_dane();
  91.     cout<<"Pensja pracownika " << worker1.imie <<" "<<worker1.nazwisko<<" ";
  92.     cout<<((worker1.pensja > SREDNIA_KRAJOWA)?"jest":"nie jest");
  93.     cout<<" wyzsza niz srednia krajowa."<<endl;
  94.     cout<<"Pensja pracownika " << worker2.imie <<" "<<worker2.nazwisko<<" ";
  95.     cout<<((worker2.pensja > SREDNIA_KRAJOWA)?"jest":"nie jest");
  96.     cout<<" wyzsza niz srednia krajowa."<<endl;
  97.     if(worker1.pensja != worker2.pensja)
  98.     {
  99.         cout<<"Wiecej zarabiajacym pracownikiem jest ";
  100.         cout<<((worker1.pensja>worker2.pensja)?(worker1.imie+" "+worker1.nazwisko):(worker2.imie+" "+worker2.nazwisko))<<".\n";
  101.         return;
  102.     }
  103.     cout<<"Pensje obu pracownikow sa rowne.";
  104. }
  105.  
  106. int main()
  107. {
  108.     Kurier pracownik1;
  109.     pracownik1.pobierz_dane();
  110.  
  111.     Magazynier pracownik2;
  112.     pracownik2.pobierz_dane();
  113.  
  114.     porownaj_zarobki(pracownik1, pracownik2);
  115.  
  116.     cout<<"\n\nNacisnij dowolny przycisk aby zakonczyc program.\n\n";
  117.     getch();
  118.     return 0;
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement