Advertisement
JStefan

[Auditoriski] Vraboteni

Feb 15th, 2017
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.79 KB | None | 0 0
  1. #include <iostream>
  2. #include <string.h>
  3.  
  4. using namespace std;
  5.  
  6. enum pozicija {
  7.     vraboten,
  8.     menadzer,
  9.     shef
  10. };
  11.  
  12. class Vraboten {
  13.     private:
  14.         char ime[30];
  15.         double plata;
  16.         pozicija pozicija_na_vraboten;
  17.     public:
  18.         Vraboten() {}
  19.         Vraboten(char ime[30], double plata, pozicija pozicija_na_vraboten) {
  20.             strcpy(this->ime, ime);
  21.             this->plata = plata;
  22.             this->pozicija_na_vraboten = pozicija_na_vraboten;
  23.         }
  24.  
  25.         void set_name(char *);
  26.         char *get_name();
  27.         void set_plata(double);
  28.         double get_plata();
  29.         void set_pozicija(pozicija);
  30.         pozicija get_pozicija();
  31.         void pecati_info();
  32. };
  33.  
  34. void Vraboten::set_name(char *ime) {
  35.     strcpy(this->ime, ime);
  36. }
  37.  
  38. char *Vraboten::get_name() {
  39.     return ime;
  40. }
  41.  
  42. void Vraboten::set_plata(double plata) {
  43.     this->plata = plata;
  44. }
  45.  
  46. double Vraboten::get_plata() {
  47.     return plata;
  48. }
  49.  
  50. void Vraboten::set_pozicija(pozicija pozicija_vraboten) {
  51.     pozicija_na_vraboten = pozicija_vraboten;
  52. }
  53.  
  54. pozicija Vraboten::get_pozicija() {
  55.     return pozicija_na_vraboten;
  56. }
  57.  
  58. void Vraboten::pecati_info() {
  59.     cout << "Ime: " << ime << endl;
  60.     cout << "Plata: " << plata << endl;
  61.     cout << "Pozicija: ";
  62.     char pozicija[15];
  63.     if(pozicija_na_vraboten == vraboten) strcpy(pozicija, "Vraboten");
  64.     else if(pozicija_na_vraboten == menadzer) strcpy(pozicija, "Menadzer");
  65.     else strcpy(pozicija, "Shef");
  66.     cout << pozicija;
  67. }
  68.  
  69. void sortiraj_vraboteni(Vraboten vraboteni[100], int n) {
  70.     Vraboten vrab;
  71.     for(int i = 0; i < n; ++i) {
  72.         for(int j = 0; j < n-1-i; ++j) {
  73.             if(vraboteni[j].get_plata() < vraboteni[j+1].get_plata()) {
  74.                 vrab = vraboteni[j];
  75.                 vraboteni[j] = vraboteni[j+1];
  76.                 vraboteni[j+1] = vrab;
  77.             }
  78.         }
  79.     }
  80. }
  81.  
  82. int main()
  83. {
  84.     int n;
  85.     cout << "Broj na vraboteni: ";
  86.     cin >> n;
  87.  
  88.     Vraboten vraboteni[n];
  89.  
  90.     char ime[30];
  91.     double plata;
  92.     pozicija pozicija_vraboten;
  93.     int t;
  94.     for(int i = 0; i < n; ++i) {
  95.         cout << "Vnesi ime:";
  96.         cin >> ime;
  97.         cout << "Vnesi plata:";
  98.         cin >> plata;
  99.         cout << "Vnesi pozicija (0 - Vraboten, 1 - Menadjer, 2 - Direktor):";
  100.         cin >> t;
  101.         pozicija_vraboten = (t == 0 ? (vraboten) : (t == 1 ? (menadzer) : (shef)));
  102.         vraboteni[i] = Vraboten(ime, plata, pozicija_vraboten);
  103.  
  104. //        vraboteni[i].set_name(ime);
  105. //        vraboteni[i].set_plata(plata);
  106. //        vraboteni[i].set_pozicija(pozicija_vraboten);
  107.     }
  108.     cout << endl;
  109.     sortiraj_vraboteni(vraboteni, n);
  110.     for(int i = 0; i < n; ++i) {
  111.         vraboteni[i].pecati_info();
  112.         cout << endl;
  113.     }
  114.  
  115.     return 0;
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement