Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

this is the code i have for my c++ projet but it does not compile would you plea

ID: 3773048 • Letter: T

Question

this is the code i have for my c++ projet but it does not compile would you please check it why it does not run in visual studio. and the description for the problem is :

Design the following set of classes so that they work together to simulate a police officer issuing a parking ticket. · The ParkedCar Class: This class should simulate a parked car. The class’s responsibilities are: o To know the car’s make, model, color, license number, and the number of minutes that the car has been parked · The ParkingMeter Class: This class should simulate a parking meter. The class’s only responsibility is: o To know the number of minutes of parking time that has been purchased · The ParkingTicket Class: This class should simulate a parking ticket. The class’s responsibilities are: o To report the make, model, color, and license number of the illegally parked car o To report the amount of the fine, which is $25 for the first hour or part of an hour that the car is illegally parked, plus $10 for every additional hour or part of an hour that the car is illegally parked o To report the name and badge number of the police officer issuing the ticket · The PoliceOfficer Class: This class should simulate a police officer inspecting parked cars. The class’s responsibilities are: o To know the police officer’s name and badge number o To examine a ParkedCar object and a ParkingMeter object, and determine whether the car’s time has expired o To issue a parking ticket (generate a ParkingTicket object) if the car’s time has expired Write a program that demonstrates how these classes collaborate.

#include <iostream>
#include <cmath>
using namespace std;

class ParkedCar
{
string make;
string model;
string color;
string licenseNumber;
int minutesParked;
public:
ParkedCar()
{
make = "Ford";
model = "Figo";
color = "Red";
licenseNumber = "TX041234";
minutesParked = 0;
}
void setMake(string m)         { make = m; }
void setModel(string m)            { model = m; }
void setColor(string c)           { color = c; }
void setLicenseNumber(string l)   { licenseNumber = l; }
void setMinutesParked(int n)       { minutesParked = n; }
string getMake()                   { return make; }
string getModel()               { return model; }
string getColor()               { return color; }
string getLicenseNumber()       { return licenseNumber; }
int getMinutesParked()           { return minutesParked; }
};
class ParkingMeter
{
ParkedCar pc;
int minutesPurchased;
  
public:
ParkingMeter(ParkedCar car, int minutes)
{
pc = car;
minutesPurchased = minutes;
}
void setMinutesPurchased(int m)   { minutesPurchased = m; }
int getMinutesPurchased()       { return minutesPurchased; }
void setParkedCar(ParkedCar p) { pc = p; }
ParkedCar getParkedCar()        { return pc; }
};
class PoliceOfficer
{
string policeName;
int badgeNumber;
public:
PoliceOfficer(string name, int num)
{
policeName = name;
badgeNumber = num;
}
void setPoliceName(string name)   { policeName = name; }
void setBadgeNumber(int num)       { badgeNumber = num; }
string getPoliceName()           { return policeName; }
int getBadgeNumber()               {return badgeNumber; }
ParkingTicket examineCarMeter(ParkingMeter parkingMeter)
{
ParkedCar pc = parkingMeter.getParkedCar();
int x = parkingMeter.pc.getMinutesParked() - parkingMeter.getMinutesPurchased();
if(x > 0)
{
ParkingTicket pTicket (pc, this, x);
}
else
{
cout<<"Parking Ticket not required."<<endl;
}
}
};
class ParkingTicket
{
ParkedCar car;
PoliceOfficer police;
int        fineMinutes;
public:
ParkingTicket(ParkedCar pc, PoliceOfficer po, int min)
{
car = pc;
police = po;
fineMinutes = min;
}
int calculateFineAmount()
{
if(fineMinutes <= 60)
return 25;
else
{
return 25 + ceil((fineMinutes - 60)/60.0) * 10;
}
}
};

int main()
{
ParkedCar p;
ParkingMeter pm (p, 10);
PoliceOfficer po ("Kumar", 222);
po.examineCarMeter (pm);
}

Explanation / Answer

Answer:

Program code to copy:

#include <iostream>

#include <cmath>

#include <string>

using namespace std;

class ParkedCar

{

     string make;

     string model;

     string color;

     string licenseNumber;

     int minutesParked;

public:

     ParkedCar()

     {

          make = "Ford";

          model = "Figo";

          color = "Red";

          licenseNumber = "TX041234";

          minutesParked = 5;

     }

     void setMake(string m)         { make = m; }

     void setModel(string m)            { model = m; }

     void setColor(string c)           { color = c; }

     void setLicenseNumber(string l)   { licenseNumber = l; }

     void setMinutesParked(int n)       { minutesParked = n; }

     string getMake()                   { return make; }

     string getModel()               { return model; }

     string getColor()               { return color; }

     string getLicenseNumber()       { return licenseNumber; }

     int getMinutesParked()           { return minutesParked; }

     void print()

     {

          cout<<"Car Make: "<<make<<endl;

          cout<<"Car Mode: "<<model<<endl;

          cout<<"Car Color: "<<color<<endl;

          cout<<"Car licenseNumber: "<<licenseNumber<<endl;

          cout<<"Car Minutes parked: "<<minutesParked<<endl;

     }

};

class ParkingMeter

{

     ParkedCar pc;

     int minutesPurchased;

public:

     ParkingMeter(ParkedCar car, int minutes)

     {

          pc = car;

          minutesPurchased = minutes;

     }

     void setMinutesPurchased(int m)   { minutesPurchased = m; }

     int getMinutesPurchased()       { return minutesPurchased; }

     void setParkedCar(ParkedCar p) { pc = p; }

     ParkedCar getParkedCar()        { return pc; }

     void print()

     {

          cout<<"Number of minutes the car purchased: "<<minutesPurchased <<endl;

     }

};

class ParkingTicket

{

     int fineMinutes;

public:

     ParkingTicket(int min)

     {

         

          fineMinutes = min;

     }

     int calculateFineAmount()

     {

          if(fineMinutes <= 60)

              return 25;

          else

          {

              return (25 + ceil((fineMinutes - 60)/60.0) * 10);

          }

     }

};

class PoliceOfficer

{

     string policeName;

     int badgeNumber;

public:

     PoliceOfficer(string name, int num)

     {

          policeName = name;

          badgeNumber = num;

     }

     void setPoliceName(string name)   { policeName = name; }

     void setBadgeNumber(int num)       { badgeNumber = num; }

     string getPoliceName()           { return policeName; }

     int getBadgeNumber()               {return badgeNumber; }

     void examineCarMeter(ParkingMeter parkingMeter)

     {

          ParkedCar pc = parkingMeter.getParkedCar();

          int x = pc.getMinutesParked() - parkingMeter.getMinutesPurchased();

          ParkingTicket pTicket(x);

          if(x > 0)

          {            

              cout<<"Need to pay fine of "<<pTicket.calculateFineAmount()<<endl;

          }

          else

          {

              cout<<"Parking Ticket not required."<<endl;

          }

     }

     void print()

     {

          cout<<"Police officer name: "<<policeName<<endl;

          cout<<"Badge number: "<<badgeNumber<<endl;

     }

};

int main()

{

     ParkedCar p;

     ParkingMeter pm (p, 10);

     p.print();

     pm.print();

     PoliceOfficer po ("Kumar", 222);

     po.print();

     po.examineCarMeter (pm);

     system("pause");

     return 0;

}

Sample Output: