Разработать подпрограмму для вычисления суммы двух комплексных чисел использовать разработанную подпрограмму для вычисления суммы N комплексных чисел. значение N вводится с клавиатуры.
Помогите решить!


Аноним: Сами числа задаются рандомно?
juliafil2: Да
Аноним: Паскаль?
juliafil2: Верно.
Аноним: Turbo, Free, ABC, Lazarus, Delphi или ABC.NET?
juliafil2: ABC.NET
Аноним: Зачем в ABC.NET создавать процедуру, когда их можно так складывать?
Аноним: Var
A,B,C:Complex;
N:integer;
Begin
A:=(random(-10,10),random(-10,10));
B:=(random(-10,10),random(-10,10));
C:=A+B;
WriteLn('A = ',A);
WriteLn('B = ',B);
WriteLn('C = ',C);
End.

Ответы

Ответ дал: Аноним
0
// PascalABC.NET 3.2, сборка 1483 от 14.06.2017
// Внимание! Если программа не работает, обновите версию!

function ReadComplex:Complex;
begin
  var (r,i):=ReadReal2;
  Result:=cplx(r,i)
end;

procedure WriteComplex(x:Complex);
begin
  if x.Imaginary=0 then Write(x.Real)
  else begin
    if x.Real<>0 then Write(x.Real);
    if (x.Imaginary>0) and (x.Real<>0) then Write('+');
    Write(x.Imaginary,'i')
    end
end;

begin
  var n:=ReadInteger('N =');
  Writeln('Введите ',n,' комплексных чисел');
  Writeln('Формат ввода числа: действ.часть, пробел, мнимая часть');
  var s:=cplx(0.0,0.0);
  loop n do s+=ReadComplex;
  Write('S='); WriteComplex(s)
end.

Пример
N = 5
Введите 5 комплексных чисел
Формат ввода числа: действ.часть, пробел, мнимая часть
2.3 -3.12
-1.7 8
6.14 0.2
-2.4 -3.2
0 1.6
S=4.34+3.48i

Похожие вопросы