#include <iostream>
#include <string>
using namespace std;
struct Car {
string brand;
string color;
string bodyType;
double engineVolume;
double mileage;
double fuelConsumption() {
return (engineVolume / mileage) * 100;
}
void reduceMileage(double value) {
mileage -= value;
}
void printInfo() {
cout << "Марка: " << brand << endl;
cout << "Цвет: " << color << endl;
cout << "Тип кузова: " << bodyType << endl;
cout << "Объем двигателя: " << engineVolume << endl;
cout << "Пробег: " << mileage << " км" << endl;
}
};
int main() {
Car car1 = {
"BMW",
"Черный",
"Седан",
2.0,
50000
};
Car* car2 = new Car{
"Audi",
"Белый",
"Купе",
1.8,
30000
};
cout << "=== Статический объект ===" << endl;
car1.printInfo();
cout << "Средний расход: "
<< car1.fuelConsumption() << endl;
car1.reduceMileage(1000);
cout << "После уменьшения пробега:" << endl;
cout << "Пробег: " << car1.mileage << " км" << endl;
cout << "\n=== Динамический объект ===" << endl;
car2->printInfo();
cout << "Средний расход: "
<< car2->fuelConsumption() << endl;
car2->reduceMileage(500);
cout << "После уменьшения пробега:" << endl;
cout << "Пробег: " << car2->mileage << " км" << endl;
delete car2;
return 0;
}