For this assignment you will design a set of classes that wo

For this assignment you will design a set of classes that work together to simulate a
car’s fuel gauge and odometer. The classes you will design are:


The FuelGauge Class: This class will simulate a fuel gauge. Its responsibilities are
– To know the car’s current amount of fuel, in gallons.
– To report the car’s current amount of fuel, in gallons.
– To be able to increment the amount of fuel by 1 gallon. This simulates putting
fuel in the car. (The car can hold a maximum of 15 gallons.)
– To be able to decrement the amount of fuel by 1 gallon, if the amount of fuel is
greater than 0 gallons. This simulates burning fuel as the car runs.


The Odometer Class: This class will simulate the car’s odometer. Its responsibilities
are:
– To know the car’s current mileage.
– To report the car’s current mileage.
To be able to increment the current mileage by 1 mile. The maximum mileage the
odometer can store is 999,999 miles. When this amount is exceeded, the odometer
resets the current mileage to 0.
– To be able to work with a FuelGauge object. It should decrease the FuelGauge
object’s current amount of fuel by 1 gallon for every 24 miles traveled. (The car’s
fuel economy is 24 miles per gallon.)


-Demonstrate the classes by creating instances of each. Simulate filling the car up with
fuel, and then run a loop that increments the odometer until the car runs out of fuel.
During each loop iteration, print the car’s current mileage and amount of fuel.

Solution

// FuelGauge.h
using namespace std;

#ifndef FUELGAUGE_H
#define FUELGAUGE_H

class FuelGauge
{
private:
int currentAmountOfFuel;
public:
FuelGauge(int gallons)
{
currentAmountOfFuel = gallons;
}
FuelGauge()
{
currentAmountOfFuel = 0;
}
int getCurrentAmountOfFuel()
{
return currentAmountOfFuel;
}
void incrementFuelTank()
{
if (currentAmountOfFuel < 15)
currentAmountOfFuel++;
}
void decrementFuelTank()
{
if (currentAmountOfFuel > 0)
currentAmountOfFuel--;
}
};

#endif

// Odometer.h
#include \"FuelGauge.h\"
using namespace std;

#ifndef ODOMETER_H
#define ODOMTER_H

class Odometer
{
private:
int currentMileage;
FuelGauge *fuelG;
public:
Odometer(int miles, FuelGauge *f)
{
currentMileage = miles;
fuelG = f;
}

int getCurrentMileage()
{
return currentMileage;
}
void incrementcurrentMileage()
{
if (currentMileage < 999999)
currentMileage++;
if (currentMileage == 999999)
currentMileage = 0;
}
void decrementcurrentMileage()
{
if (currentMileage > 24)
currentMileage--;
}
};

#endif

// main.cpp

#include <iostream>
#include <fstream>
#include <cfloat>
#include <iomanip>
#include <climits>
#include <cmath>
#include <string>
#include \"FuelGauge.h\"
#include \"Odometer.h\"
using namespace std;

int main()
{
FuelGauge fg(10);
Odometer o(0,&fg);

while (fg.getCurrentAmountOfFuel() > 0)
{
o.incrementcurrentMileage();
cout<< \"Mileage: \" << o.getCurrentMileage() << \" Fuel: \" << fg.getCurrentAmountOfFuel() << \" gallons\" << endl;
}

return 0;
}

For this assignment you will design a set of classes that work together to simulate a car’s fuel gauge and odometer. The classes you will design are: • The Fuel
For this assignment you will design a set of classes that work together to simulate a car’s fuel gauge and odometer. The classes you will design are: • The Fuel
For this assignment you will design a set of classes that work together to simulate a car’s fuel gauge and odometer. The classes you will design are: • The Fuel

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site