Advertisement
Josif_tepe

Untitled

Jan 24th, 2025
43
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.71 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. class Vozilo {
  5. private:
  6.     string marka;
  7.     string model;
  8.     int godina;
  9.     float consumption;
  10.    
  11. public:
  12.     Vozilo() {}
  13.     Vozilo(string _marka, string _model, int _godina, float _consumption) {
  14.         marka = _marka;
  15.         model = _model;
  16.         godina = _godina;
  17.         consumption = _consumption;
  18.     }
  19.     Vozilo(const Vozilo & tmp) {
  20.         marka = tmp.marka;
  21.         model = tmp.model;
  22.         godina = tmp.godina;
  23.         consumption = tmp.consumption;
  24.     }
  25.     virtual ~Vozilo() {}
  26.    
  27.     virtual void print() {
  28.         cout << marka << " " << model << " " << godina << " " << consumption << endl;
  29.     }
  30.    
  31.     virtual int value() {
  32.         return godina * consumption;
  33.     }
  34.    
  35. };
  36.  
  37. class Avtomobil : public Vozilo {
  38. private:
  39.     int garancija;
  40. public:
  41.     Avtomobil() : Vozilo() {}
  42.     Avtomobil(string _marka, string _model, int _godina, float _consumption, int _garancija) : Vozilo(_marka, _model, _godina, _consumption) {
  43.         garancija = _garancija;
  44.     }
  45.     Avtomobil(const Avtomobil & tmp) : Vozilo(tmp) {
  46.         garancija = tmp.garancija;
  47.     }
  48.     virtual ~Avtomobil() {}
  49.    
  50.     virtual void print() override {
  51.         Vozilo::print();
  52.         cout << garancija << endl;
  53.     }
  54.    
  55.     virtual int value() override{
  56.         int original_value = Vozilo::value();
  57.         return original_value + garancija * 10;
  58.     }
  59.    
  60. };
  61. class Kamion : public Vozilo {
  62. private:
  63.     int tezhina;
  64.    
  65. public:
  66.     Kamion() : Vozilo() {}
  67.     Kamion(string _marka, string _model, int _godina, float _consumption, int _tezhina) : Vozilo(_marka, _model, _godina, _consumption) {
  68.         tezhina = _tezhina;
  69.     }
  70.     Kamion(const Kamion & tmp) : Vozilo(tmp) {
  71.         tezhina = tmp.tezhina;
  72.     }
  73.     virtual ~Kamion() {}
  74.  
  75.     virtual void print() override {
  76.         Vozilo::print();
  77.         cout << tezhina << endl;
  78.     }
  79.    
  80.     virtual int value() override{
  81.         int original_value = Vozilo::value();
  82.         return original_value + tezhina;
  83.     }
  84. };
  85.  
  86. void najgolema_vrednost(Vozilo ** niza, int n) {
  87.     int najgolema_vrednost = niza[0]->value();
  88.    
  89.     for(int i = 0; i < n; i++) {
  90.         if(niza[i]->value() > najgolema_vrednost) {
  91.             najgolema_vrednost = niza[i]->value();
  92.         }
  93.     }
  94.     cout << najgolema_vrednost << endl;
  95.    
  96. }
  97. int main()
  98. {
  99.    
  100.     Vozilo * car = new Avtomobil("audi", "a3", 7, 5, 15);
  101.     Vozilo * truck = new Kamion("man", "man", 15, 20, 5000);
  102.    
  103.    
  104.     Vozilo * niza[2];
  105.     niza[0] = car;
  106.     niza[1] = truck;
  107.    
  108.     najgolema_vrednost(niza, 2);
  109.    
  110.    
  111.     return 0;
  112. }
  113.  
  114. /*
  115.  9
  116.  i
  117.  s
  118.  p
  119.  i
  120.  t
  121.  
  122.  p
  123.  s
  124.  p
  125.  
  126.  
  127.  
  128.  **/
  129.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement