39 lines
2.4 KiB
Markdown
39 lines
2.4 KiB
Markdown
# Семинар 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
|
||
Реализовать операцию сравнения массивов через расстояние между векторами. При сравнении векторов разной длины сравнивать длину без учета значений.
|
||
|
||
|