Josif_tepe

Untitled

Sep 11th, 2025
346
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.96 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. enum Tip {
  4.     M, S
  5. };
  6. class Inventar {
  7. protected:
  8.     Tip tip;
  9.     int ID;
  10.    
  11. public:
  12.     Inventar() {}
  13.     Inventar(Tip _tip, int _ID) {
  14.         tip = _tip;
  15.         ID = _ID;
  16.     }
  17.    
  18.     Tip get_tip() {
  19.         return tip;
  20.     }
  21.     int get_ID() {
  22.         return ID;
  23.     }
  24. };
  25. class Kancelarii {
  26. protected:
  27.     int id;
  28.     int br_elementi;
  29.     Inventar * niza;
  30. public:
  31.     Kancelarii() {}
  32.     Kancelarii(int _id, int _br_elementi, Inventar * _niza) {
  33.         id = _id;
  34.         br_elementi = _br_elementi;
  35.         niza=  new Inventar[_br_elementi];
  36.         niza = _niza;
  37.     }
  38.     ~Kancelarii() {}
  39.    
  40.     virtual int cena() {
  41.         int sum = 0;
  42.         for(int i = 0; i < br_elementi; i++) {
  43.             if(niza[i].get_tip() == M) {
  44.                 sum += 5000;
  45.             }
  46.             else {
  47.                 sum += 4000;
  48.             }
  49.         }
  50.         return sum;
  51.     }
  52. };
  53.  
  54. class Asistenstka : public Kancelarii {
  55. protected:
  56.     int ispitni_tetratki;
  57.    
  58. public:
  59.     Asistenstka() : Kancelarii() {
  60.        
  61.        
  62.     }
  63.    
  64.     Asistenstka(int _id, int _br_elementi, Inventar * _niza, int _ispitni) : Kancelarii(_id, _br_elementi, _niza){
  65.         ispitni_tetratki = _ispitni;
  66.     }
  67.     ~Asistenstka() {}
  68.    
  69.    
  70.     virtual int cena() override {
  71.         int res = Kancelarii::cena();
  72.         res += 20 * ispitni_tetratki;
  73.         return res;
  74.     }
  75. };
  76.  
  77. class Profesorska : public Kancelarii {
  78. protected:
  79.     int proektor;
  80. public:
  81.     Profesorska() : Kancelarii() {}
  82.     Profesorska(int _id, int _br_elementi, Inventar * _niza, int _proektor) : Kancelarii(_id, _br_elementi, _niza) {
  83.         proektor = _proektor;
  84.     }
  85.     ~Profesorska() {}
  86.    
  87.     virtual int cena() override {
  88.         int res = Kancelarii::cena();
  89.         if(proektor == 1) {
  90.             res += 18000;
  91.         }
  92.         return res;
  93.     }
  94.    
  95. };
  96. int main() {
  97.    
  98.      return 0;
  99. }
  100.  
Advertisement
Add Comment
Please, Sign In to add comment