Напечатать сумму, произведение и номера положительных элементов после последнего нулевого элемента — Pascal(Паскаль)

uses crt;

var
  i, size, num, summa, pr, k: integer;
  x: array [1 .. 10000] of integer;
  n: array [1 .. 10000] of integer;

begin;
  clrscr;
  writeln('Введите размер массива');
  readln(size);
  FOR i := 1 TO size do
  begin
    clrscr;
    writeln('Введите элементы массива');
    readln(x[i]);
  end;
  writeln('Введенный массив');
  FOR i := 1 TO size do
  begin
    writeln(x[i]);
    IF x[i] = 0 THEN
      num := i;
  end;
  if num = 0 then
  begin
    writeln('Нулевые элементы не найдены');
    halt;
  end;
  pr := 1;
  FOR i := num + 1 TO size do
  begin
    IF x[i] > 0 THEN
    begin
      summa := summa + x[i];
      pr := pr * x[i];
      k := k + 1;
      n[k] := i;
    end;
  end;
  writeln('Номера положительных элементов после последнего 0');
  FOR i := k TO size do
  begin
    writeln(n[i]);
  end;
  writeln('Сумма положительных элементов после последнего 0 равна ', summa);
  writeln('Произведение положительных элементов после последнего 0 равна ', pr);

end.

Leave a Comment

2 + 1 =