HLPL2/Sem3/README.md

39 lines
2.4 KiB
Markdown
Raw Permalink Normal View History

2020-10-05 08:16:28 +00:00
# Семинар 05.10.12020
## task1
### Задание 1
2020-10-05 06:59:09 +00:00
Создать класс для работы с динамическим массивом типа int, хранить в свойствах указатель на данные и размер массива, реализовать функцию вывода всех значений массива, конструктор, получающий на вход размер массива, и деструктор.
2020-10-05 08:16:28 +00:00
### Задание 2
2020-10-05 06:59:09 +00:00
Реализовать сеттер, проверяющий входящее значение на принадлежность к промежутку от -100 до 100 включительно и проверяющий выход за границы массива, и геттер, проверяющий выход за границы массива.
2020-10-05 08:16:28 +00:00
### Задание 3
2020-10-05 06:59:09 +00:00
Реализовать конструктор копирования.
2020-10-05 08:16:28 +00:00
### Задание 4
2020-10-05 06:59:09 +00:00
Реализовать операцию сложения и вычитания для массивов(сложение и вычитание всех элементов).
2020-10-05 08:16:28 +00:00
### Задание 5
2020-10-05 06:59:09 +00:00
Реализовать операцию добавления значения в конец массива с расширением его размера. Проверять добавляемое значение на принадлежность к промежутку -100 100.
2020-10-05 08:16:28 +00:00
## task2
### Задание 1
Реализовать исключение в классе предыдущего задания: std:bad_alloc ошибка выделения памяти, std:out_of_range ошибка при обращении по индексу, std:invalid_argument неверное значение.
https://www.tutorialspoint.com/cplusplus/cpp_exceptions_handling.htm
### Задание 2
Реализовать шаблонный класс для массива элементов задаваемого типа.
### Задание 3
Реализовать операцию “=” с помощью конструктора копирования. Реализовать операцию вывода “<<”.
### Задание 4
Реализовать операцию сравнения массивов через расстояние между векторами. При сравнении векторов разной длины сравнивать длину без учета значений.