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

Лабораторные работы / лабы ооп / ooп_3_отчёт вар 9

.docx
Скачиваний:
5
Добавлен:
03.07.2024
Размер:
38.1 Кб
Скачать

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

“ОМСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ”

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

ОТЧЕТ

по лабораторной работе ООП №3

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

Выполнил:

Студент группы ИВТ-234 Кукушкина А.А.

_____________________________________________________

(дата, подпись)

Проверил:

ст. пр. доцент Дорошенко М.С.

_____________________________________________________

(дата, подпись)

Омск 2024

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

Тема: Наследование

Вариант 9

Задание 1

Условие задачи:

Создать класс-родитель «строка» и класс-родитель «окно»; из этих двух классов получить окно со строкой (вывести на экран, изменить строку, размеры окна).

Текст программы:

#include <iostream>

#include <string>

#include <Windows.h>

using namespace std;

class String {

protected:

string text;

public:

String(string str) : text(str) {}

void setText(string str) {

text = str;

}

string getText() {

return text;

}

};

class Window {

protected:

int width;

int height;

public:

Window(int w, int h) : width(w), height(h) {}

void setSize(int w, int h) {

width = w;

height = h;

}

void display() {

cout << "Размер окна: " << width << " x " << height << endl;

}

};

class WindowWithString : public Window, public String {

public:

WindowWithString(string str, int w, int h) : String(str), Window(w, h) {}

void display() {

cout << "Размер окна: " << width << " x " << height << endl;

cout << "Текст: " << text << endl;

}

};

int main() {

setlocale(LC_ALL, "ru");

SetConsoleCP(1251);

string inputText;

int inputWidth, inputHeight;

cout << "Введите текст для отображения в окне: ";

getline(cin, inputText);

cout << "Введите ширину окна: ";

cin >> inputWidth;

cout << "Введите высоту окна: ";

cin >> inputHeight;

WindowWithString window(inputText, inputWidth, inputHeight);

window.display();

// Изменение текста

string newText;

cout << "Введите новый текст для отображения в окне: ";

cin.ignore();

getline(cin, newText);

window.setText(newText);

window.display();

// Изменение размеров окна

int newWidth, newHeight;

cout << "Введите новую ширину окна: ";

cin >> newWidth;

cout << "Введите новую высоту окна: ";

cin >> newHeight;

window.setSize(newWidth, newHeight);

window.display();

return 0;

}

Результаты выполнения программы, выводы:

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