В одномерном массиве, состоящем из n действительных элементов, вычислить: номер минимального элемента массива и сумму элементов массива, расположенных между первым и последним отрицательными элементами — Pascal(Паскаль)

program ff;

var
  A: array [1 .. 100] of integer; { переменная массива }
  i, n: integer; { переменные для циклов }

procedure min(n: integer);
var
  i, rez, rezi: integer;
begin
  rez := A[1];
  rezi := 1;
  for i := 2 to n do
    if A[i] < rez then
    begin
      rez := A[i];
      rezi := i;
    end;
  writeln('Minimalinyi element= ', rez, ' s nomerom= ', rezi);
end;

procedure sum(n: integer);
var
  i, kol, s1, s2, rez: integer;
begin
  kol := 0;
  for i := 1 to n do
    if A[i] < 0 then
      inc(kol);
  if kol < 2 then
  begin
    writeln('Massiv soderzhit menee 2-h OTRITsATELiNYH chisel');
    exit;
  end;

  for i := n downto 1 do
    if A[i] < 0 then
      s1 := i;

  for i := 1 to n do
    if A[i] < 0 then
      s2 := i;
  rez := 0;
  for i := s1 + 1 to s2 - 1 do
    rez := rez + A[i];
  writeln('Summa= ', rez);
end;

begin
  write('Vvedite razmer massiva A: ');
  readln(n);

  for i := 1 to n do
  begin
    write('A[', i, ']=');
    readln(A[i]);
  end;

  write('Vot vvedennyy vami massiv A:');
  for i := 1 to n do
    write(A[i]:3);
  writeln;

  min(n); { ***1*** }
  sum(n); { ***2*** }

  readln;

end.

Leave a Comment

41 − = 37