- •9.1. Наследование 62
- •1 Семестр
- •18 Занятий
- •1. Линейные алгоритмы и ветвления
- •1.1. Вычисления по формулам. Использование стандартных математических функций
- •1.2. Целочисленная арифметика. Приведение типов
- •1.3. Логические выражения
- •1.4. Побитовые операции
- •Ветвления
- •Условный оператор
- •Логическое выражение в условном операторе
- •Графики и области на плоскости
- •2. Циклы
- •Простые циклы
- •Циклы с условием
- •Нахождение делителей числа
- •Перебор значений
- •Простые числа
- •Условные циклы
- •Пошаговый ввод данных
- •2.8. Вложенные циклы
- •Итерационные циклы
- •3. Массивы. Указатели
- •Обработка одномерных массивов
- •Простейшие действия над элементами матриц
- •Вложенные циклы с переменными границами
- •Заполнение матрицы значениями, зависящими от индексов
- •3.5. Преобразование матриц
- •3.6. Символьные матрицы
- •4. Строки
- •Обработка последовательностей символов
- •Выделение слов в строке
- •Перевод из одной cистемы счисления в другую
- •15 Занятий
- •Передача имени функции в качестве параметра. Вычисление корня уравнения
- •Сортировка массивов
- •Рекурсия
- •Массивы структур
- •7.4. Стек и очередь
- •8. Классы
- •8.1. Класс «число». Инкапсуляция Объявить класс «натуральное число» и определить его методы. Выполнить задание, используя объекты этого класса.
- •8.3. Класс «вектор»
- •8.4. Перегрузка операций
- •Наследование
- •9.1. Наследование
8.3. Класс «вектор»
Объявить класс «вектор», моделирующий математическое понятие «одномерный массив».
Реализовать три вида конструктора (без аргументов, инициализации, копирования), деструктор.
Максимально возможный размер массива задать константой. В отдельном поле size должно храниться значение количества элементов (размерность) объекта-вектора.
Определить методы:
задания размерности вектора,
определения количества элементов заданного вектора;
получения элемента вектора по заданному индексу, с контролем выхода за пределы размерности вектора
занесения значения элемента вектора по заданному индексу, с контролем выхода за пределы размерности вектора,
сложения, вычитания, умножения и деления всех элементов вектора на скаляр,
определения длины вектора ( l=
),
вычисления поэлементного сложения (вычитания, умножения, деления) векторов с одинаковыми границами индексов,
вывод значений элементов вектора на экран,
ввода значений элементов вектора с клавиатуры,
заполнения элементов вектора случайными числами.
Разместить описание класса в заголовочном файле, а определения методов и главную функцию программы – в отдельных файлах. Использовать объекты класса «вектор» при решении предложенной задачи.
X(N) и Y(M) - исходные векторы. Определить вектор с максимальной длиной.
X(N) и Y(M) - исходные векторы. Определить вектор с минимальной длиной.
Вычислить скалярное произведение векторов X (N) и Y (N): k=
.
Получить вектор Z
с элементами
z
i
= x
i
+ k.
Даны три вектора, содержащих n вещественных элементов. Определить, являются ли вектора ортогональными.
X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами
z0=1; z i = x i * y i + x i-1*y i-1, i = 1, n-1.
X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами
z0=1; z i = x i * y i - x i-1*y i-1, i = 1, n-1.
X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами
z i = a*x i + b*y i, i = 0, n-1 , a, b – максимальные значения векторов X,Y.
X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами
z i = a*x i - b*y i, i = 0, n-1 , a, b – минимальные значения векторов X,Y.
Найти среднее значение элементов вектора X (N) и max - максимальное отклонение значений x i от этого среднего значения. Получить вектор Z с элементами z i = x i + max.
Получить вектор Y(N), упорядоченный по возрастанию значений элементов вектора X (N). Вычислить скалярное произведение векторов X (N) и Y (N): k = .
Включить в упорядоченный вектор X (N) новый элемент z так, чтобы сохранилась упорядоченность его элементов. Реализовать алгоритм бинарного поиска для определения места вхождения включаемого элемента.
Получить вектор Z(К), упорядоченный по возрастанию, путем слияния векторов X(N) и Y(M), упорядоченных по возрастанию (K = N + M).
