class Pairs
{
protected:
int num_A;
int num_B;
public:
Pairs(int a, int b): num_A(a), num_B(b){}
virtual void adding(Pairs*) = 0;
virtual void difference(Pairs*) = 0;
virtual void multiplication(Pairs*) = 0;
virtual void devision(Pairs*) = 0;
virtual void show();
virtual int getNumA() = 0;
virtual int getNumB() = 0;
};
class Complex : public Pairs
{
public:
Complex(int, int);
void adding(Pairs*);
void difference(Pairs*);
void multiplication(Pairs*);
void devision(Pairs*);
void show();
int getNumA();
int getNumB();
};
Complex::Complex(int a, int b): Pairs(a, b){};
//реализация других методов
class Rational : public Pairs
{
public:
Rational(int, int);
~Rational() = default;
void adding(Pairs*);
void difference(Pairs*);
void multiplication(Pairs*);
void devision(Pairs*);
void show();
int getNumA();
int getNumB();
};
Rational::Rational(int a, int b):Pairs(a, b){}
//реализация других методов