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

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

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

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

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

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

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

ОТЧЕТ

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

КОНСТРУКТОРЫ И ДЕСТРУКТОРЫ

Выполнил:

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

_____________________________________________________

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

Проверил:

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

_____________________________________________________

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

Омск 2024

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

Тема: Конструкторы и деструкторы

Вариант 9

Задание 1

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

Создайте класс prompt. Введите в него конструктор, который выводит на экран приглашение (строку) и затем позволяет ввести целые числа. Класс должен выделить память под строки с длинами, равными введенным це­лым числам, и случайным образом заполнить их. Функция-член op() должна сформировать новую строку и заполнить ее поочередно символами первой и второй строк.

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

#include <iostream>

#include <string>

#include <cstdlib>

#include <ctime>

using namespace std;

class Prompt

{

private:

string str1;

string str2;

public:

Prompt()

{

cout << "Введите первое целое число: ";

int num1;

cin >> num1;

cout << "Введите второе целое число: ";

int num2;

cin >> num2;

str1.resize(num1);

str2.resize(num2);

srand(time(NULL));

for (int i = 0; i < num1; i++)

{

str1[i] = rand() % 26 + 'a';

}

for (int i = 0; i < num2; i++)

{

str2[i] = rand() % 26 + 'a';

}

}

string op()

{

string result;

int index1 = 0;

int index2 = 0;

while (index1 < str1.length() || index2 < str2.length())

{

if (index1 < str1.length())

{

result += str1[index1];

index1++;

}

if (index2 < str2.length())

{

result += str2[index2];

index2++;

}

}

return result;

}

};

int main()

{

setlocale(LC_ALL, "ru");

Prompt prompt;

string result = prompt.op();

cout << "Результат операции op(): " << result << endl;

return 0;

}

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

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