С использованием функции random сформировать одномерный массив, состоящий из n вещественных элементов в котором элементы случайным образом принимают положительный или отрицательный знак и значение от -5 до 5. для заданного числа y такого что amin

program Project2;
{$APPTYPE CONSOLE}
{ сделано на консольном приложении }
uses
  SysUtils;

const
  N = 10; { размер массива }

var
  i, y: integer;
  sum, pr: extended;
  A: array [1 .. N] of real;

procedure Create; { Заполняем массив }
begin
  Randomize();
  WriteLn('Greate massiv A');
  for i := 1 to N do
  begin
    A[i] := (Random(5) - Random(5)) + (Random(10) / 10);
    { если нужна бОльшая разрядность увеличте с 10/10 до 100/100 и т.д.
      и не забудьте поставить в Write(:2) цифру 2 при выводе на экран }
    WriteLn(A[i]:1:1, ' ');
  end;
  WriteLn('');
end;

procedure SumPr(y: integer); { Ищем сумму и произведение }
begin
  sum := 0;
  pr := 1;
  for i := 1 to N do
  begin
    if abs(A[i]) then
      sum := sum + A[i]
    else
      pr := pr * A[i];
  end;
end;

begin

  Create;
  Write('Enter Y : ');
  ReadLn(y);
  SumPr(y);
  { Вывод результатов }
  if sum = 0 then
    WriteLn('4isel < ', y, ' - NET, Sum = ', sum:1:1)
  else
    WriteLn('Sum 4isel, < ', y, ' = ', sum:1:1);
  if pr = 1 then
    WriteLn('ispolzovani vse 4isela.')
  else
    WriteLn('Proizvedenie ostalnih = ', pr:1:1);
  ReadLn;

end.

Leave a Comment

86 − = 76