Предмет: Информатика, автор: anastasiiayudina

Реалізувати мовою С++ клас Complex для представлення комплексного числа: дві внутрішні змінні (a, b) типу float, які визначають комплексне число в алгебраїчній формі: z = a + bi; два конструктори класу; методи доступу до внутрішніх змінних класів GetA(), GetB(), SetA(), SetB(); операторні функції: копіювання комплексних чисел operator=(), додавання комплексних чисел operator+(), віднімання комплексних чисел operator-(), множення комплексних чисел operator*(), поділу комплексних чисел operator/()

Ответы

Автор ответа: GalacticGazelle
1


class Complex

{

private:

   float a, b; // internal variables for the complex number in the form a + bi

public:

   // Constructors

   Complex() { a = 0; b = 0; } // default constructor

   Complex(float a_, float b_) { a = a_; b = b_; } // constructor with parameters

   // Accessor methods

   float GetA() { return a; }

   float GetB() { return b; }

   void SetA(float a_) { a = a_; }

   void SetB(float b_) { b = b_; }

   // Operator overloads

   Complex operator=(const Complex &other) // copy assignment operator

   {

       a = other.a;

       b = other.b;

       return *this;

   }

   Complex operator+(const Complex &other) // addition operator

   {

       return Complex(a + other.a, b + other.b);

   }

   Complex operator-(const Complex &other) // subtraction operator

   {

       return Complex(a - other.a, b - other.b);

   }

   Complex operator*(const Complex &other) // multiplication operator

   {

       return Complex(a*other.a - b*other.b, a*other.b + b*other.a);

   }

   Complex operator/(const Complex &other) // division operator

   {

       float divisor = other.a*other.a + other.b*other.b;

       return Complex((a*other.a + b*other.b)/divisor, (b*other.a - a*other.b)/divisor);

   }

};



https://pastebin.com/JtWm6xZx

Похожие вопросы
Предмет: Литература, автор: PhiloSophia
Предмет: Геометрия, автор: klimovetsmaxim74