Сумма чисел 3 +2 и и 5-8і равняется 8-6і
Произведение чисел 3 +2 и и 5-8і равняется 31-17і
uses crt;
type complex=record
re,im:real;
end;
procedure Vyvod(var f:complex);
begin
if f.im<0 then write(f.re:0:1,' -',-f.im:0:1,'i')
else write(f.re:0:1,' +',f.im:0:1,'i');
end;
procedure Summa(f,g:complex;var z:complex);
begin
z.re:=f.re+g.re;
z.im:=f.im+g.im;
end;
procedure Proizvedenie(f,g:complex;var z:complex);
begin
z.re:=f.re*g.re-f.im*g.im;
z.im:=g.re*f.im+f.re*g.im;
end;
var a,b,s,p:complex;
begin
clrscr;
writeln('Введите действительную и мнимую части числа a:');
readln(a.re,a.im);
writeln('Введите действительную и мнимую части числа b:');
readln(b.re,b.im);
Summa(a,b,s);
write('Сумма чисел ');
Vyvod(a);
write(' и ');
Vyvod(b);
write(' равняется ');
Vyvod(s);
writeln;
Proizvedenie(a,b,p);
write('Произведение чисел ');
Vyvod(a);
write(' и ');
Vyvod(b);
write(' равняется ');
Vyvod(p);
readln
end.
Вариант 2
program llll;
uses crt;
type
Complex = record
re, im:real;
end;
var
a,b,s,p:complex;
{ osnova }
BEGIN
ClrScr;
write('a.re=');
readln(a.re);
write('a.im=');
readln(a.im);
write('b.re=');
readln(b.re);
write('b.im=');
readln(b.im);
s.re:=a.re+b.re;
s.im:=a.im+b.im;
if s.im>0 then
write('suma chisel=', s.re:2:0, '+', s.im:2:0, 'i')
else
write('suma chisel=', s.re:2:0, ' ', s.im:2:0, 'i');
readln;
write('a.re=');
readln(a.re);
write('a.im=');
readln(a.im);
write('b.re=');
readln(b.re);
write('b.im=');
readln(b.im);
p.re:=a.re*b.re-a.im*b.im;
p.im:=a.re*b.im+a.im*b.re;
if p.im>0 then
write('dobutok chisel=', p.re:2:0, '+', p.im:2:0, 'i')
else
write('dobutok chisel=', p.re:2:0, ' ', p.im:2:0, 'i');
readln;
END.