HLPL2/Sem3
Inex Code 6a59f6a463 Sem 3 task 2 2020-10-05 08:16:28 +00:00
..
Makefile Sem 3 task 2 2020-10-05 08:16:28 +00:00
README.md Sem 3 task 2 2020-10-05 08:16:28 +00:00
task1.cpp Sem 3 task 2 2020-10-05 08:16:28 +00:00
task2.cpp Sem 3 task 2 2020-10-05 08:16:28 +00:00

README.md

Семинар 05.10.12020

task1

Задание 1

Создать класс для работы с динамическим массивом типа int, хранить в свойствах указатель на данные и размер массива, реализовать функцию вывода всех значений массива, конструктор, получающий на вход размер массива, и деструктор.

Задание 2

Реализовать сеттер, проверяющий входящее значение на принадлежность к промежутку от -100 до 100 включительно и проверяющий выход за границы массива, и геттер, проверяющий выход за границы массива.

Задание 3

Реализовать конструктор копирования.

Задание 4

Реализовать операцию сложения и вычитания для массивов(сложение и вычитание всех элементов).

Задание 5

Реализовать операцию добавления значения в конец массива с расширением его размера. Проверять добавляемое значение на принадлежность к промежутку -100 100.

task2

Задание 1

Реализовать исключение в классе предыдущего задания: std:bad_alloc ошибка выделения памяти, std:out_of_range ошибка при обращении по индексу, std:invalid_argument неверное значение.

https://www.tutorialspoint.com/cplusplus/cpp_exceptions_handling.htm

Задание 2

Реализовать шаблонный класс для массива элементов задаваемого типа.

Задание 3

Реализовать операцию “=” с помощью конструктора копирования. Реализовать операцию вывода “<<”.

Задание 4

Реализовать операцию сравнения массивов через расстояние между векторами. При сравнении векторов разной длины сравнивать длину без учета значений.