Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания (вариант a).doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
957 Кб
Скачать
☆

8.3. Класс «вектор»

Объявить класс «вектор», моделирующий математическое понятие «одномерный массив».

Реализовать три вида конструктора (без аргументов, инициализации, копирования), деструктор.

Максимально возможный размер массива задать константой. В отдельном поле size должно храниться значение количества элементов (размерность) объекта-вектора.

Определить методы:

  • задания размерности вектора,

  • определения количества элементов заданного вектора;

  • получения элемента вектора по заданному индексу, с контролем выхода за пределы размерности вектора

  • занесения значения элемента вектора по заданному индексу, с контролем выхода за пределы размерности вектора,

  • сложения, вычитания, умножения и деления всех элементов вектора на скаляр,

  • определения длины вектора ( l= ),

  • вычисления поэлементного сложения (вычитания, умножения, деления) векторов с одинаковыми границами индексов,

  • вывод значений элементов вектора на экран,

  • ввода значений элементов вектора с клавиатуры,

  • заполнения элементов вектора случайными числами.

Разместить описание класса в заголовочном файле, а определения методов и главную функцию программы – в отдельных файлах. Использовать объекты класса «вектор» при решении предложенной задачи.

  1. X(N) и Y(M) - исходные векторы. Определить вектор с максимальной длиной.

  2. X(N) и Y(M) - исходные векторы. Определить вектор с минимальной длиной.

  3. Вычислить скалярное произведение векторов X (N) и Y (N): k= . Получить вектор Z с элементами z i = x i + k.

  4. Даны три вектора, содержащих n вещественных элементов. Определить, являются ли вектора ортогональными.

  5. X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами

z0=1; z i = x i * y i + x i-1*y i-1, i = 1, n-1.

  1. X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами

z0=1; z i = x i * y i - x i-1*y i-1, i = 1, n-1.

  1. X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами

z i = a*x i + b*y i, i = 0, n-1 , a, b – максимальные значения векторов X,Y.

  1. X (N) и Y (N) - исходные векторы. Получить вектор Z с элементами

z i = a*x i - b*y i, i = 0, n-1 , a, b – минимальные значения векторов X,Y.

  1. Найти среднее значение элементов вектора X (N) и max - максимальное отклонение значений x i от этого среднего значения. Получить вектор Z с элементами z i = x i + max.

  2. Получить вектор Y(N), упорядоченный по возрастанию значений элементов вектора X (N). Вычислить скалярное произведение векторов X (N) и Y (N): k = .

  3. Включить в упорядоченный вектор X (N) новый элемент z так, чтобы сохранилась упорядоченность его элементов. Реализовать алгоритм бинарного поиска для определения места вхождения включаемого элемента.

  4. Получить вектор Z(К), упорядоченный по возрастанию, путем слияния векторов X(N) и Y(M), упорядоченных по возрастанию (K = N + M).