HLPL2/Sem3/README.md

2.4 KiB
Raw Permalink Blame History

Семинар 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

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