In: Computer Science
Given main(), complete the Car class (in files Car.h and Car.cpp) with member functions to set and get the purchase price of a car (SetPurchasePrice(), GetPurchasePrice()), and to output the car's information (PrintInfo()).
Ex: If the input is:
2011 18000 2018
where 2011 is the car's model year, 18000 is the purchase price, and 2018 is the current year, the output is:
Car's information: Model year: 2011 Purchase price: 18000 Current value: 5770
Note: printInfo() should use three spaces for indentation.
___________________________________________________
given starting code:
__________________________________________________
Main.cpp
#include <iostream>
#include "Car.h"
using namespace std;
int main(int argc, const char* argv[]) {
int userYear;
int userPrice;
int userCurrentYear;
Car myCar;
cin >> userYear;
cin >> userPrice;
cin >> userCurrentYear;
myCar.SetModelYear(userYear);
myCar.SetPurchasePrice(userPrice);
myCar.CalcCurrentValue(userCurrentYear);
myCar.PrintInfo();
return 0;
}
_________________________________________________
Car.cpp
#include <iostream>
#include <math.h>
#include "Car.h"
using namespace std;
void Car::SetModelYear(int userYear){
modelYear = userYear;
}
int Car::GetModelYear() const {
return modelYear;
}
// TODO: Implement SetPurchasePrice() function
// TODO: Implement GetPurchasePrice() function
void Car::CalcCurrentValue(int currentYear) {
double depreciationRate = 0.15;
int carAge = currentYear - modelYear;
// Car depreciation formula
currentValue = (int)
round(purchasePrice * pow((1 - depreciationRate), carAge));
}
// TODO: Implement PrintInfo() function to output modelYear,
purchasePrice, and
// currentValue
________________________________________________________________
Car.h
#ifndef CARH
#define CARH
class Car {
private:
int modelYear;
// TODO: Declare purchasePrice member (int)
int currentValue;
public:
void SetModelYear(int userYear);
int GetModelYear() const;
// TODO: Declare SetPurchasePrice() function
// TODO: Declare GetPurchasePrice() function
void CalcCurrentValue(int currentYear);
// TODO: Declare PrintInfo() method to output modelYear,
purchasePrice, and
// currentValue
};
#endif
// Please comment below, if you have any doubt
// If the answer is helpful, please give a like :-)
//********************************************************************************
1) Main.cpp
#include <iostream>
#include "Car.h"
using namespace std;
int main(int argc, const char* argv[]) {
int userYear;
int userPrice;
int userCurrentYear;
Car myCar;
cin >> userYear;
cin >> userPrice;
cin >> userCurrentYear;
myCar.SetModelYear(userYear);
myCar.SetPurchasePrice(userPrice);
myCar.CalcCurrentValue(userCurrentYear);
myCar.PrintInfo();
return 0;
}
// ********************************************************************************
2) Car.cpp
#include <iostream>
#include <math.h>
#include "Car.h"
using namespace std;
void Car::SetModelYear(int userYear){
modelYear = userYear;
}
int Car::GetModelYear() const{
return modelYear;
}
void Car::SetPurchasePrice(int boughtPrice){
purchasePrice = boughtPrice;
}
int Car::GetPurchasePrice() const{
return purchasePrice;
}
void Car::CalcCurrentValue(int currentYear) {
double depreciationRate = 0.15;
int carAge = currentYear - modelYear;
// Car depreciation formula
currentValue = (int)round(purchasePrice * pow((1 -
depreciationRate), carAge));
}
Car::PrintInfo() const{
cout << "Car's information:" << endl;
cout << " Model year: " << modelYear
<<endl;
cout << " Purchase price: " << purchasePrice
<<endl;
cout << " Current value: " << currentValue
<<endl;
}
//*********************************************************************
3) Car.h
#ifndef CARH
#define CARH
class Car {
private:
int modelYear;
int purchasePrice;
int currentValue;
public:
void SetModelYear(int userYear);
int GetModelYear() const;
void SetPurchasePrice(int boughtPrice);
int GetPurchasePrice() const;
void CalcCurrentValue(int currentYear);
void PrintInfo() const;
};
#endif