Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Задание 2. Разработать консольную программу на языке С++, в которой описывается и используется класс



Разработать консольную программу на языке С++, в которой описывается и используется класс. Требования к оформлению класса те же, что и для первого задания. Для объектов класса выполнить перегрузку операций, указанных в задании.

1. Класс «Время» должен включать поля данных: часы, минуты, секунды; методы: вывод времени и часть суток (до 6:00 – ночь, до 12:00 – утро, до 18:00 – день, до 23:59:59 – вечер) и перегруженные операции: сложение (+), вычитание (-), сравнение (<, >) времени.

2. Класс «Матрица» должен включать поля данных: количество строк, количество столбцов, элементы матрицы; методы: вывод матрицы и проверка: является ли матрица диагональной, нулевой и перегруженные операции: сложение, вычитание, деление, умножение матриц, умножение матрицы на число.

3. Класс «Комплексное число в алгебраической форме z=x+y*i» должен включать поля данных: действительная (x) и мнимая (y) часть числа; методы: вычисление модуля комплексного числа, возведение комплексного числа в степень, вывод комплексного числа и перегруженные операции: сложение, вычитание, деление, умножение комплексных чисел.

4. Класс «Дата» должен включать поля данных: день, месяц, год; методы: вывод даты и времени года и перегруженные операции: вычитание двух дат (-), сравнение двух дат (<, >).

5. Класс «Прямая» должен включать поля данных: коэффициенты прямой y = ax +b; методы: вывод уравнения прямой на экран, определение точек пересечения с осями и перегруженные операции: проверка перпендикулярности прямых (!=), определение угла между двумя прямыми (%).

6. Класс «Вектор» должен включать поля данных: координаты вектора; методы: вывод вектора и перегруженные операции: сложение (+), скалярное (%) и векторное (*) произведение векторов, вычисление угла между векторами.

7. Класс «Дата» должен включать поля данных: день, месяц, год; методы: вывод даты и времени года и перегруженные операции: добавление (+) к дате целого числа (количества дней), сравнение двух дат (<, >).

8. Класс «Матрица» должен включать поля данных: количество строк, количество столбцов, элементы матрицы; методы: вывод матрицы и проверка: является ли матрица симметричной (АТ = А) и перегруженные операции: сложение, вычитание, деление, умножение матриц, умножение матрицы на число.

9. Класс «Комплексное число в алгебраической форме z=x+y*i» должен включать поля данных: действительная (x) и мнимая (y) часть числа; методы: вычисление корня комплексного числа, вывод комплексного числа и перегруженные операции: сложение, вычитание, деление, умножение комплексных чисел.

10. Класс «Прямая» должен включать поля данных: координаты двух точек (x1, y1) и (x2, y2); методы: вывод уравнения прямой вида y = ax + b и перегруженные операции: проверка параллельности прямых (||), определение угла между двумя прямыми (%).

11. Класс «Вектор» должен включать поля данных: координаты вектора; методы: вывод вектора, вычисление длины вектора и перегруженные операции: сложение (+), скалярное (%) и векторное (*) произведение векторов.

12. Класс «Матрица» должен включать поля данных: количество строк, количество столбцов, элементы матрицы; методы: вывод матрицы и проверка: является ли матрица верхнее треугольной, нижнее треугольной и перегруженные операции: сложение, вычитание, деление, умножение матриц, умножение матрицы на число.

Контрольные вопросы





Дата публикования: 2015-04-09; Прочитано: 769 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...