Kód: Vybrať všetko
Type TKompCislo = class
r,i:integer;
mojLabel:TLabel;
constructor Init(ir,ii:integer;imojLabel:TLabel);
procedure pricitaj(ik:TKompCislo);
procedure odcitaj(ik:TKompCislo);
procedure vynasob(ik:TKompCislo);
destructor Done;
private
procedure Zobraz;
end;
implementation
{$R *.dfm}
constructor TKompCislo.Init(ir,ii:integer;imojLabel:TLabel);
begin
r:=ir; i:=ii; mojLabel:=imojLabel; Zobraz;
end;
//*******************************************************
procedure TKompCislo.pricitaj(ik:TKompCislo);
begin
r:=r+ik.r;
i:=i+ik.i;
Zobraz;
end;
//*******************************************************
procedure TKompCislo.odcitaj(ik:TKompCislo);
begin
r:=r-ik.r;
i:=i-ik.i;
Zobraz;
end;
//*******************************************************
procedure TKompCislo.vynasob(ik:TKompCislo);
begin
r:=r*ik.r-i*ik.i;
i:=r*ik.i+i*ik.r;
Zobraz;
end;
//*******************************************************
destructor TKompCislo.Done;
begin
i:=0; r:=0; Zobraz;
end;
//*******************************************************
procedure TKompCislo.Zobraz;
begin
if i>=0 then mojLabel.Caption:=IntToStr(r)+'+'+IntToStr(i)+'i'
else mojLabel.Caption:=IntToStr(r)+'-'+IntToStr(abs(i))+'i';
end;