Загрузка данных


#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;
}