Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Лабораторная работа ЛР 1.4.2.
ПЕРЕГРУЗКА ОПЕРАЦИЙ.
Разработайте программу на языке С++, используя пользовательский тип данных классы и перегрузку операций.
Вариант 1. Создайте класс Complex (комплексное число) в алгебраической форме , включающего два поля класса: действительную часть (x) и мнимую часть (y) числа. Реализовать методы вычисления и вывода корня комплексного числа. Перегрузить операции сложения, вычитания, деления и умножения комплексных чисел.
Вариант 2. Создайте класс Fraction (обыкновенная дробь), включающего поля: числитель и знаменатель. Реализовать методы сокращения дроби и вывода дроби. Перегрузить операции сложения, вычитания, деления и умножения дробей.
Вариант 3. Создайте класс Vector (вектор), включающий поля: координаты вектора. Реализовать методы вывода вектора и вычисления длины вектора. Перегрузить операции сложения (+), скалярного (%) и векторного (*) произведения векторов.
Вариант 4. Создайте класс Matrix (матрица), включающего поля: количество строк, количество столбцов, элементы матрицы. Реализовать методы вывода матрицы и вычисления определителя. Перегрузить операции сложения, вычитания, деления, умножения матриц, умножения матрицы на число.
Вариант 5. Создайте класс StraightLine (прямая линия), включающего координаты двух точек и . Реализовать методы вывода уравнения прямой . Перегрузить операции проверки параллельности прямых (||) и определения угла между двумя прямыми (%).
Вариант 6. Создайте класс Complex (комплексное число) в алгебраической форме , включающего два поля класса: действительную часть (x) и мнимую часть (y) числа. Реализовать методы вычисления модуля комплексного числа, возведения комплексного числа в степень и вывода комплексного числа. Перегрузить операции сложения, вычитания, деления и умножения комплексных чисел.
Вариант 7. Создайте класс Fraction (обыкновенная дробь), включающего поля: числитель и знаменатель. Реализовать методы определения обратной дроби и вывода дроби. Перегрузить операции сложения, вычитания и умножения дробей.
Вариант 8. Создайте класс Vector (вектор), включающий поля: координаты вектора. Реализовать методы определения направляющих косинусов вектора и вывода всех характеристик вектора. Перегрузить операции сложения (+), скалярного (%) и векторного (*) произведения векторов.
Вариант 9. Создайте класс Matrix (матрица), включающего поля: количество строк, количество столбцов, элементы матрицы. Реализовать методы вывода матрицы и проверки является ли матрица единичной. Перегрузить операции сложения, вычитания, деления, умножения матриц, умножения матрицы на число.
Вариант 10. Создайте класс StraightLine (прямая линия), включающего коэффициенты прямой . Реализовать методы вывода уравнения прямой на экран и определения точек пересечения с осями. Перегрузить операции проверки перпендикулярности прямых (!=) и определения угла между двумя прямыми (%).
Вариант 11. Создайте класс Complex (комплексное число) в тригонометрической форме . Класс включает поля: модуль и аргумент . Реализовать методы возведения комплексного числа в степень и вывода комплексного числа в алгебраической и тригонометрической формах. Перегрузить операции сложения, вычитания, деления и умножения комплексных чисел.
Вариант 12. Создайте класс Fraction (обыкновенная дробь), включающего поля: числитель и знаменатель. Реализовать методы вывода в виде обыкновенной и десятичной (пять знаков после запятой) дроби. Перегрузить операции сложения, вычитания, деления, умножения дробей и сравнения дробей <, >.
Вариант 13. Создайте класс Fraction (обыкновенная дробь), в котором реализовать перегрузку: оператора суммирования дробей, оператора суммирования дроби и целого числа, оператора умножения, деления, вычитания дробей, а также дроби и целого числа, оператора ~ для сокращения дроби, логических операторов ==, >=, <=.
Вариант 14. Создайте класс Matrix (матрица), включающего поля: количество строк, количество столбцов, элементы матрицы. Реализовать методы вывода матрицы и проверки является ли матрица диагональной, нулевой. Перегрузить операции сложения, вычитания, деления, умножения матриц, умножения матрицы на число.
Вариант 15. Создайте класс Time (время), включающего поля: часы, минуты, секунды. Реализовать методы вывода времени и часть суток (до 6:00 ночь, до 12:00- утро, до 18:00 день, до 23:59:59 - вечер). Перегрузить операции сложения (+), вычитания (-), сравнения (<, >) времени.
Вариант 16. Создайте класс Complex (комплексное число) в показательной форме . Класс включает поля: модуль и аргумент . Реализовать методы вывода комплексного числа в алгебраической, тригонометрической и экспоненциальной формах. Перегрузить операции сложения, вычитания, деления и умножения комплексных чисел.
Вариант 17. Создайте класс Vector (вектор), включающий поля: координаты вектора. Реализовать методы вывода вектора и вычисления длины вектора. Перегрузить операции сложения (+), скалярного (%) и векторного (*) произведения векторов, проверки коллинеарности (||) двух векторов.
Вариант 18. Создайте класс Fraction (обыкновенная дробь), включающего поля: числитель и знаменатель. Реализовать методы возведения дроби в степень и вывода дроби. Перегрузить операции сложения, вычитания, умножения, деления, сравнение дробей.
Вариант 19. Создайте класс Matrix (матрица), включающего поля: количество строк, количество столбцов, элементы матрицы. Реализовать методы вывода матрицы и проверки является ли матрица симметричной . Перегрузить операции сложения, вычитания, деления, умножения матриц, умножения матрицы на число.
Вариант 20. Создайте класс Complex (комплексное число) в тригонометрической форме . Класс включает поля: модуль и аргумент . Реализовать методы извлечения корня из числа и вывода числа. Перегрузить операции сложения, вычитания, деления и умножения комплексных чисел.
Вариант 21. Создайте класс Date (дата), включающего поля: дата, месяц, год. Реализовать методы вывода даты и времени года. Перегрузить операции вычитания двух дат (-), сравнения двух дат (<, >).
Вариант 22. Создайте класс Matrix (матрица), включающего поля: количество строк, количество столбцов, элементы матрицы. Реализовать методы вывода матрицы и проверки является ли матрица верхнетреугольной, нижнетруголной. Перегрузить операции сложения, вычитания, деления, умножения матриц, умножения матрицы на число.
Вариант 23. Создайте класс Fraction (обыкновенная дробь), включающего поля: числитель, знаменатель. Реализовать методы сокращения дроби, возведения дроби в степень и вывод дроби. Перегрузить операции сложения, вычитания дробей.
Вариант 24. Создайте класс Complex (комплексное число) в показательной форме . Класс включает поля: модуль и аргумент . Реализовать методы вывода комплексного числа и возведение числа в степень. Перегрузить операции сложения, вычитания, деления и умножения комплексных чисел.
Вариант 25. Создайте класс Date (дата), включающего поля: дата, месяц, год. Реализовать методы вывода даты и времени года. Перегрузить операции добавление (+) к дате целого числа (количества дней), сравнение двух дат (<, >).
PAGE \* MERGEFORMAT1