Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <vector>
- using namespace std;
- class Auto
- {
- private:
- string make = "";
- string model = "";
- string fuel = "";
- double consumpt = 0.0;
- public:
- Auto( string make, string model, string fuel, double consumpt )
- {
- setMake(make);
- setModel(model);
- setFuel(fuel);
- setconsumpt(consumpt);
- }
- void setMake(string make )
- {
- this->make = make;
- }
- void setModel(string model )
- {
- this->model = model;
- }
- void setFuel(string fuel )
- {
- this->fuel = fuel;
- }
- void setconsumpt( double consumpt )
- {
- if( consumpt <= 0 ){
- cout << "The consumpt could NOT be NEGATIVE or ZERO !" << endl;
- cout << "The consumpt will be set to 5 l/100km" << endl;
- this->consumpt = 5;
- }
- else{
- this->consumpt = consumpt;
- }
- }
- string getMake()
- {
- return this->make;
- }
- string getModel()
- {
- return this->model;
- }
- string getFuel()
- {
- return this->fuel;
- }
- double getconsumpt()
- {
- return this->consumpt;
- }
- void PrintInfo()
- {
- cout << "Make -> " << make << endl;
- cout << "Model -> " << model << endl;
- cout << "Fuel Type -> " << fuel << endl;
- cout << "Consumpt " << consumpt << " l/100km" << endl;
- }
- };
- struct Tank
- {
- string fuelType = "";
- double pricePerLiter = 0.0;
- void PrintInfo()
- {
- cout << "Price per liter -> " << pricePerLiter << endl;
- }
- };
- void Calculate( Auto autoObject, Tank tankObject, int traveledKm )
- {
- autoObject.PrintInfo();
- cout << endl;
- tankObject.PrintInfo();
- cout << "Traveled KM -> " << traveledKm << endl;
- double consumtionPerAllKm = ( autoObject.getconsumpt() / 100 ) * traveledKm;
- cout << "Consumpt of liters per all Kilometers -> " << consumtionPerAllKm << endl;
- cout << "Needed money -> " << consumtionPerAllKm * tankObject.pricePerLiter << " BGN" << endl;
- cout << endl;
- }
- int main()
- {
- int n = 0;
- int traveledKm = 0;
- vector<Auto>vecCars;
- vector<Tank>vecTank;
- cout << "How many cars you want to check ? " << endl;
- cin >> n;
- for(int i = 0; i < n; i++ ){
- string make = "";
- string model = "";
- string fuelType = "";
- double consumpt = 0.0;
- double pricePerLiter = 0.0;
- cout << "Enter Make : ";
- cin >> make;
- cout << "Enter Model : ";
- cin >> model;
- cout << "Enter FuelType : ";
- cin >> fuelType;
- cout << "Enter consumpt ( l/100km ) : ";
- cin >> consumpt;
- cout << "Enter Price per Liter : ";
- cin >> pricePerLiter;
- Auto carObj( make, model, fuelType, consumpt );
- Tank tankObject;
- tankObject.fuelType = fuelType;
- tankObject.pricePerLiter = pricePerLiter;
- vecCars.push_back( carObj );
- vecTank.push_back( tankObject );
- }
- cout << "Enter traveled KM : ";
- cin >> traveledKm;
- cout<<endl;
- for(int i = 0; i < n; i++ ){
- Calculate( vecCars.at(i), vecTank.at(i), traveledKm );
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement