uses crt; {подключаем модуль для процедуры очистки экрана}
Type Complex=Record {Запись, описывающая комплексное число}
R:real; {Действительная часть}
M:Real;
end;
Var a: array [1..50] of Complex; {Массив чисел}
c: array [1..50] of Real; {Массив модулей сумм}
i, n: integer;
tmp: Complex;
begin
writeln ('N (<=50): '); {Ввод данных}
repeat
readln (n);
if (n>50) then writeln ('N > 50!');
until n<=50;
writeln ('Elements: ');
for i:=1 to n do
begin
readln (a[i].R);
readln (a[i].M);
end;
clrscr; {Очистка экрана}
for i:=1 to n do {Вывод входных данных}
writeln (a[i].R:3:5, '+', a[i].M:3:5, 'i');
for i:=1 to n-1 do {Идём по элементам}
begin
tmp.R:= a[i].R+a[i+1].R; {Считаем сумму}
tmp.M:= a[i].M+a[i+1].M;
c[i]:= sqrt (sqr (tmp.R)+sqr(tmp.M)); {Считаем модуль}
end;
writeln ('Result:'); {Выводим результат}
for i:=1 to n-1 do
writeln (c[i]:3:5);
readln;
end.