Добавил:
korayakov
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабы / ООП.Builder / Лабы / пергрузка / Unit2
.cpp//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
#include <math.h>
#include <Math.hpp>
//---------------------------------------------------------------------------
#pragma package(smart_init)
//Конструктор
Complex::Complex(double R,double I)
{
Re=R; Im=I;
}
//---------------------------------------------------------------------------
Complex Complex::operator + (Complex &X)
{ Complex R(0,0);
R.Re=Re + X.Re;
R.Im=Im + X.Im;
return R;
}
//---------------------------------------------------------------------------
Complex Complex::operator - ( Complex &X)
{
Complex R(0,0);
R.Re=Re - X.Re;
R.Im=Im - X.Im;
return R;
}
//---------------------------------------------------------------------------
Complex & Complex::operator=(const Complex &R)
{
Re=R.Re;
Im=R.Im;
//m=R.num;
return *this;
}
//---------------------------------------------------------------------------
Complex Complex::operator*(const Complex &X) const
{
Complex R(0,0);
R.Re=Re*X.Re-Im*X.Im;
R.Im=Re*X.Im+Im*X.Re;
return R;
}
//---------------------------------------------------------------------------
Complex Complex::operator /(const Complex &X) const
{
Complex R(2,3);
R.Re=(Re*X.Re+Im*X.Im)/(Re*Re+Im*Im);
R.Im=(-Re*X.Im+Im*X.Re)/(Re*Re+Im*Im);
return R;
}
//---------------------------------------------------------------------------
Complex operator ++(Complex &R )
{ R.Re=R.Re+1;
R.Im=R.Im+1;
return R;
}
//-----------------------------------------------------------------------------
Complex operator --(Complex &R )
{ R.Re=R.Re-1;
R.Im=R.Im-1;
return R;
}