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

§1. Классы

  1. Класс сomplex

1.1. Создайте класс сomplex, моделирующий комплексные числа и действия над ними в алгебраической форме (см. приложение 1).

  • В разделе private класс должен содержать закрытые переменные-члены Re и Im, которые означают соответственно действительную и мнимую части комплексного числа.

  • В разделе public класс должен содержать

  • конструкторы

    • по умолчанию complex(), который придает переменным Re и Im значение равное 0;

    • параметризованный конструктор complex(doudle a) для преобразования действительного числа в комплексное (полагает Re = a и Im = 0);

    • параметризованный конструктор complex(doudle a, doudle b), который инициализирует переменные Re и Im;

  • функцию-член

void print();

которая выводит комплексное число на экран в алгебраической форме записи a+bi;

  • функции-друзей

  • double mod(complex z);

  • double arg(complex z);

  • complex conjugate(complex z);

  • complex inverse(complex z).

  • перегруженные операторы

  • унарный – для вычисления комплексного числа противоположного данному;

  • бинарные +, –, * и / для вычисления суммы, разности, произведения и частного комплексных чисел (при делении на 0 программа должна выдавать сообщение об ошибке);

  • логические бинарные операции = =, !=.

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

  • (необязательное задание) оператор ввода >> для ввода комплексных чисел в алгебраической форме с клавиатуры.

Требования к программе, содержащей класс complex:

  1. программа должна выдавать сообщения в случаях, когда происходит какое-либо некорректная операция (находится обратное к 0; производится деление на 0; вычисляется аргумент 0);

  2. Интерфейс программы должен находиться в файле complex.h, который должен быть защищен от повторного включения.

  3. Реализация класса complex должна находиться в файле complex.cpp.

1.2. Создайте файл-приложение application1.cpp класса complex, который должен содержать программу, демонстрирующую работу всех его функций и операторов. В частности,

  • объявлять и инициализировать всеми возможными способами две комплексные переменные u и v;

  • выводить на экран комплексное число u двумя способами: с помощью функции print()и с помощью перегруженного оператора вывода <<;

  • вычислять , , , , , , , ;

  • вычислять логические значения выражений;

  • (необязательное задание) организовывать ввод комплексных чисел в алгебраической форме с клавиатуры.

  1. Класс rational

1.1. Создайте класс rational, моделирующий рациональные числа и действия над ними.

  • В разделе private класс должен содержать закрытые переменные-члены a и b, которые означают соответственно числитель и знаменатель рационального числа.

  • В разделе public класс должен содержать

  • конструкторы

    • по умолчанию rational(), который полагает , ;

    • параметризованный конструктор rational(doudle с) для преобразования действительного числа в комплексное (полагает , );

    • параметризованный конструктор rational(doudle с, doudle d), который инициализирует переменные a и b;

  • функцию-член

void print();

которая выводит рациональное число на экран в виде a/b;

  • функцию-друга rational inverse(rational q) для нахождения рационального числа, обратного данному;

  • перегруженные операторы

  • унарный – для вычисления рационального числа противоположного данному;

  • бинарные +, –, * и / для вычисления суммы, разности, произведения и частного рациональных чисел;

  • логические бинарные операции ==, !=.

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

  • (необязательное задание) оператор ввода >> для ввода комплексных чисел в алгебраической форме с клавиатуры.

Требования к программе, содержащей класс rational:

  1. результатом операций, должно быть такое рациональное число числитель и знаменатель которого – взаимно простые числа.

  2. программа должна выдавать сообщения в случаях, когда происходит какое-либо некорректная операция (находится обратное к 0 или производится деление на 0);

  3. интерфейс программы должен находиться в файле rational.h, который должен быть защищен от повторного включения.

  4. реализация класса complex должна находиться в файле rational.cpp.

1.2. Создайте файл-приложение application.cpp класса rational, которое должно продемонстрировать работу всех его функций и операторов. В частности,

  • объявлять и инициализировать всеми возможными способами две рациональные переменные p и q;

  • выводить на экран комплексное число u двумя способами: с помощью функции print()и с помощью перегруженного оператора вывода <<.

  • вычислять , , , , , , , , ;

  • вычислять логические значения выражений;

  • организовывать ввод рациональных чисел с клавиатуры.