Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
2
Добавлен:
03.07.2024
Размер:
16 Кб
Скачать

Федеральное государственное автономное образовательное учреждение высшего образования

«ОМСКИЙ ГОСУДАРСТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»

Кафедра Информатика и вычислительная техника

Лабораторная работа ООП №3

по дисциплине «Программирование»

на тему:

«НАСЛЕДОВАНИЕ»

Выполнил ст.гр. ИВТ-234

Шкутова А.В.

Проверила

Дорошенко М.С

Омск 2024

Организовать программу осуществляющую иерархию порождения одного клас­са из базового, по типу "компьютер"->"периферийное устройство"->"кла­виатура".

#include <iostream>

#include <string>

using namespace std;

class Computer { // Объявление класса "Компьютер"

private:

string model; // Приватное поле для хранения модели компьютера

string manufacturer; // Приватное поле для хранения производителя компьютера

public:

Computer(string mdl, string mfr) : model(mdl), manufacturer(mfr) {} // Конструктор класса с параметрами

void displayInfo() { // Метод класса для вывода информации о компьютере

cout << "Компьютерная модель: " << model << endl; // Вывод модели компьютера

cout << "Производитель: " << manufacturer << endl; // Вывод производителя компьютера

}

};

class PeripheralDevice : public Computer { // Класс "Периферийное устройство" наследует от класса "Компьютер"

private:

string type; // Приватное поле для хранения типа периферийного устройства

public:

PeripheralDevice(string mdl, string mfr, string tp) : Computer(mdl, mfr), type(tp) {} // Конструктор класса с параметрами

void displayInfo() { // Метод класса для вывода информации о периферийном устройстве

Computer::displayInfo(); // Вызов метода отображения информации о компьютере

cout << "Type: " << type << endl; // Вывод типа периферийного устройства

}

};

class Keyboard : public PeripheralDevice { // Класс "Клавиатура" наследует от класса "Периферийное устройство"

private:

int numKeys; // Приватное поле для хранения количества клавиш

public:

Keyboard(string mdl, string mfr, string tp, int keys) : PeripheralDevice(mdl, mfr, tp), numKeys(keys) {} // Конструктор класса с параметрами

void displayInfo() { // Метод класса для вывода информации о клавиатуре

PeripheralDevice::displayInfo(); // Вызов метода отображения информации о периферийном устройстве

cout << "Количество клавиш: " << numKeys << endl; // Вывод количества клавиш

}

};

int main() {

setlocale(LC_ALL, "RUS");

Keyboard myKeyboard("Механическая клавиатура", "Logitech", "Проводная", 104); // Создание объекта класса "Клавиатура"

myKeyboard.displayInfo(); // Вызов метода отображения информации о клавиатуре

return 0;

}

Соседние файлы в папке лабы ооп