Advertisement
Guest User

ccc

a guest
Jan 19th, 2019
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.30 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4. using namespace std;
  5. class Auto
  6. {
  7. private:
  8.  
  9.     string make = "";
  10.     string model = "";
  11.     string fuel = "";
  12.     double consumpt = 0.0;
  13.  
  14. public:
  15.  
  16.     Auto( string make, string model, string fuel, double consumpt )
  17.     {
  18.         setMake(make);
  19.         setModel(model);
  20.         setFuel(fuel);
  21.         setconsumpt(consumpt);
  22.     }
  23.  
  24.     void setMake(string make )
  25.     {
  26.         this->make = make;
  27.     }
  28.     void setModel(string model )
  29.     {
  30.         this->model = model;
  31.     }
  32.     void setFuel(string fuel )
  33.     {
  34.         this->fuel = fuel;
  35.     }
  36.  
  37.     void setconsumpt( double consumpt )
  38.     {
  39.         if( consumpt <= 0 ){
  40.             cout << "The consumpt could NOT be NEGATIVE or ZERO !" << endl;
  41.             cout << "The consumpt will be set to 5 l/100km" << endl;
  42.             this->consumpt = 5;
  43.         }
  44.         else{
  45.         this->consumpt = consumpt;
  46.         }
  47.     }
  48.  
  49.     string getMake()
  50.     {
  51.         return this->make;
  52.     }
  53.  
  54.     string getModel()
  55.     {
  56.         return this->model;
  57.     }
  58.  
  59.     string getFuel()
  60.     {
  61.         return this->fuel;
  62.     }
  63.  
  64.     double getconsumpt()
  65.     {
  66.         return this->consumpt;
  67.     }
  68.  
  69.     void PrintInfo()
  70.     {
  71.         cout << "Make -> " << make << endl;
  72.         cout << "Model -> " << model << endl;
  73.         cout << "Fuel Type -> " << fuel << endl;
  74.         cout << "Consumpt " << consumpt << " l/100km" << endl;
  75.     }
  76.  
  77.  
  78. };
  79.  
  80. struct Tank
  81. {
  82.     string fuelType = "";
  83.  
  84.     double pricePerLiter = 0.0;
  85.  
  86.     void PrintInfo()
  87.     {
  88.     cout << "Price per liter -> " << pricePerLiter << endl;
  89.     }
  90. };
  91.  
  92. void Calculate( Auto autoObject, Tank tankObject, int traveledKm )
  93. {
  94.     autoObject.PrintInfo();
  95.  
  96.     cout << endl;
  97.  
  98.     tankObject.PrintInfo();
  99.  
  100.     cout << "Traveled KM -> " << traveledKm << endl;
  101.  
  102.     double consumtionPerAllKm = ( autoObject.getconsumpt() / 100 ) * traveledKm;
  103.  
  104.     cout << "Consumpt of liters per all Kilometers -> " << consumtionPerAllKm << endl;
  105.  
  106.     cout << "Needed money -> " << consumtionPerAllKm * tankObject.pricePerLiter << " BGN" << endl;
  107. cout << endl;
  108. }
  109.  
  110. int main()
  111. {
  112.     int n = 0;
  113.  
  114.     int traveledKm = 0;
  115.  
  116.     vector<Auto>vecCars;
  117.  
  118.     vector<Tank>vecTank;
  119.  
  120.     cout << "How many cars you want to check ? " << endl;
  121.  
  122.     cin >> n;
  123.  
  124.     for(int i = 0; i < n; i++ ){
  125.         string make = "";
  126.         string model = "";
  127.         string fuelType = "";
  128.         double consumpt = 0.0;
  129.         double pricePerLiter = 0.0;
  130.  
  131.         cout << "Enter Make : ";
  132.         cin >> make;
  133.         cout << "Enter Model : ";
  134.         cin >> model;
  135.         cout << "Enter FuelType : ";
  136.         cin >> fuelType;
  137.         cout << "Enter consumpt ( l/100km ) : ";
  138.         cin >> consumpt;
  139.         cout << "Enter Price per Liter : ";
  140.         cin >> pricePerLiter;
  141.  
  142.  
  143.         Auto carObj( make, model, fuelType, consumpt );
  144.         Tank tankObject;
  145.  
  146.         tankObject.fuelType = fuelType;
  147.         tankObject.pricePerLiter = pricePerLiter;
  148.  
  149.         vecCars.push_back( carObj );
  150.         vecTank.push_back( tankObject );
  151.     }
  152.     cout << "Enter traveled KM : ";
  153.  
  154.     cin >> traveledKm;
  155. cout<<endl;
  156.     for(int i = 0; i < n; i++ ){
  157.         Calculate( vecCars.at(i), vecTank.at(i), traveledKm );
  158.     }
  159.  
  160.     return 0;
  161. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement