Анализ предметной области и проектирование класса на языке C++
Автор: jyrth • Сентябрь 27, 2021 • Лабораторная работа • 423 Слов (2 Страниц) • 523 Просмотры
Составить описание класса для объектов-векторов, задаваемых координатами концов в трехмерном пространстве, считая, что компоненты векторов представлены вещественными числами типа double. Компоненты векторов должны быть скрыты (инкапсулированы) в объекте. Предусмотреть в классе деструктор и, как минимум, два конструктора:
а) для инициализации векторов нулевыми компонентами и
б) заданным набором компонентов.
Можно использовать параметры по умолчанию для сокращения количества конструкторов.
Организовать в конструкторах и деструкторе вывод на экран информационных сообщений, например, «Конструктор 1», «Деструктор» и т.д.
I. С помощью функций-элементов класса обеспечить
1) доступ к элементам вектора (чтение/запись);
2) вычисление модуля вектора;
3) копирование вектора;
4) умножение вектора на скаляр;
5) нормировку вектора (получение вектора единичной длины).
II. C помощью внешних функций обеспечить двуместные операции над векторами A и B:
a) с получением нового вектора C:
1) сложение (C = A + B);
2) вычитание (C = A – B);
3) векторное произведение (С = A B);
б) с получением скалярных величин:
1) скалярного произведения двух векторов;
2) косинуса и синуса угла между двумя векторами;
3) величины угла в градусах между векторами в пределах [–180º, 180º].
УКАЗАНИЕ: для расчета угла воспользуйтесь функцией atan2, подключив заголовочный файл math.h.
Создайте функцию-элемент
...