Advertisement
Josif_tepe

Untitled

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