Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

ПОМОГИТЕ С ДЗ

Даниил Ольшанец Ученик (108), открыт 1 неделю назад
Реализовать класс Car
Описание класса:

Создайте класс Car, который будет описывать автомобиль.
В классе должно быть три конструктора:
Конструктор по умолчанию: присваивает автомобилю стандартные значения (например, скорость = 0, модель = "Неизвестно").
Конструктор с параметрами: принимает и задает параметры автомобиля (например, скорость, модель).


Геттеры и сеттеры:
Реализуйте геттеры и сеттеры для следующих полей:
model (строка)
speed (целое число)
Методы:

Реализуйте два метода:
Увеличение скорости: метод accelerate(int value), который увеличивает текущую скорость автомобиля на значение value. Если после увеличения скорость превышает 200 км/ч, ограничить её до 200 км/ч.

Торможение: метод brake(int value), который уменьшает текущую скорость автомобиля на значение value. Скорость не может быть меньше 0.
Деструктор:

Реализуйте корректный деструктор, который выводит сообщение о том, что объект автомобиля был удален (например: "Автомобиль [модель] удален").

Пример использования:
Создайте несколько объектов класса Car:
Один с использованием конструктора по умолчанию.
Один с использованием конструктора с параметрами.
Увеличьте скорость одного из автомобилей с помощью метода accelerate().
Примените торможение с помощью метода brake() для другого автомобиля.
Выведите текущие значения скорости и модели через геттеры.
2 ответа
Nikolay✓ Искусственный Интеллект (490897) 1 неделю назад
Вот пример реализации класса Car на языке Python, который соответствует вашему описанию:
print(f"Автомобиль {self._model} удален")

# Пример использования
if __name__ == "__main__":
# Создаем автомобиль с использованием конструктора по умолчанию
car1 = Car()
print(f"Модель: {car1.model}, Скорость: {car1.speed} км/ч")

# Создаем автомобиль с использованием конструктора с параметрами
car2 = Car("Toyota", 50)
print(f"Модель: {car2.model}, Скорость: {car2.speed} км/ч")

# Увеличиваем скорость первого автомобиля
car1.accelerate(70)
print(f"После ускорения - Модель: {car1.model}, Скорость: {car1.speed} км/ч")

# Применяем торможение ко второму автомобилю
car2.brake(20)
print(f"После торможения - Модель: {car2.model}, Скорость: {car2.speed} км/ч")

# Применяем ускорение, превышающее лимит
car1.accelerate(150)
print(f"После ускорения - Модель: {car1.model}, Скорость: {car1.speed} км/ч")

Описание кода:

Конструктор: Класс Car имеет два конструктора: один по умолчанию и другой с параметрами для задания модели и скорости.
Геттеры и сеттеры: Для полей model и speed реализованы геттеры и сеттеры. Сеттер для speed ограничивает значение в пределах от 0 до 200.

Методы:

accelerate(int value): Увеличивает скорость на заданное значение, не превышая 200.
brake(int value): Уменьшает скорость на заданное значение, не опускаясь ниже 0.
Деструктор: При удалении объекта класса выводится сообщение о том, что автомобиль был удален.
Пример использования: Создаются два объекта Car, демонстрируются методы увеличения и уменьшения скорости, а также выводятся текущие значения скорости и модели.
Sergio 2.1 Оракул (67253) 1 неделю назад
 #include <iostream> 
#include <string>

class Car {
private:
std::string model;
int speed;

public:
Car() {
model = "Неизвестно";
speed = 0;
std::cout << "Создан автомобиль по умолчанию" << std::endl;
}

Car(std::string m, int s) {
model = m;
speed = (s >= 0 && s <= 200) ? s : 0;
std::cout << "Создан автомобиль " << model << std::endl;
}

~Car() {
std::cout << "Автомобиль " << model << " удален" << std::endl;
}

std::string getModel() const {
return model;
}

int getSpeed() const {
return speed;
}

void setModel(const std::string& m) {
model = m;
}

void setSpeed(int s) {
if (s >= 0 && s <= 200) {
speed = s;
}
}

void accelerate(int value) {
if (value > 0) {
speed = (speed + value > 200) ? 200 : speed + value;
}
std::cout << "Скорость " << model << " увеличена до " << speed << " км/ч" << std::endl;
}

void brake(int value) {
if (value > 0) {
speed = (speed - value < 0) ? 0 : speed - value;
}
std::cout << "Скорость " << model << " уменьшена до " << speed << " км/ч" << std::endl;
}
};

int main() {
Car car1;
std::cout << "Модель: " << car1.getModel() << ", Скорость: " << car1.getSpeed() << " км/ч" << std::endl;

Car car2("BMW", 100);
std::cout << "Модель: " << car2.getModel() << ", Скорость: " << car2.getSpeed() << " км/ч" << std::endl;

car1.accelerate(50);
car2.brake(30);

std::cout << "\nИтоговые значения:" << std::endl;
std::cout << "Car1 - Модель: " << car1.getModel() << ", Скорость: " << car1.getSpeed() << " км/ч" << std::endl;
std::cout << "Car2 - Модель: " << car2.getModel() << ", Скорость: " << car2.getSpeed() << " км/ч" << std::endl;

return 0;
}
Похожие вопросы