Вариант 1. Комплексные числа

Сложность

10 баллов

Описание

Спроектировать и реализовать класс Complex для работы с комплексными числами.

В классе должны быть определены различные конструкторы (по умолчанию, только на основе вещественной части, по вещественной и мнимой части, конструктор копирования).

Должны быть перегружены следующие операторы: +, -, *, ==, !=, << (вывод в поток типа ostream).

Защита

Для защиты лабораторной работы необходимо представить:

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

Пример

Разработанный класс Complex должен допускать такое использование:

/*...*/

int main() {
	Complex a;
	Complex b(1);
	Complex c(1,1);

	cout << "a+b = " << a+b << endl
	     << "a-b = " << a-b << endl
	     << "b*c = " << b*c << endl;

	if (a == b) cout << "Something wrong...\n"; cout << "As expected\n";

	return 0;
}
Сайт управляется системой uCoz