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

program PascalGuru;

uses crt;

type
  massiv = array [1 .. 100] of real; { инициализация массива }

var
  Z: massiv; { инициализация переменных }
  i, n, otr1, otr2: integer;
  summa1, summa2: real;

begin
  write('N= ');
  readln(n); { ввод размерности массива }

  writeln('Vvedite elementy massiva:');
  for i := 1 to n do
  begin
    write('Z[', i, ']= ');
    readln(Z[i]);
  end; { ввод элементов массива }
  clrscr;
  writeln('Vot vvedenye vami massiv: ');
  for i := 1 to n do
    write(Z[i]:0:2, ', '); { вывод массива на экран }
  writeln;
  writeln;

  summa1 := 0; { изначально сумма1 равна 0 }

  for i := 1 to n do
    if odd(i) then
      summa1 := summa1 + Z[i]; { находим сумму массива с нечетными номерами }

  for i := 1 to n do
    if Z[i] < 0 then
    begin
      otr1 := i;
      break;
    end; { поиск первого отрицательного элемента }

  for i := n downto 1 do
    if Z[i] < 0 then
    begin
      otr2 := i;
      break;
    end; { поиск последнего отрицательного элемента }

  summa2 := 0; { изначально сумма2 равна 0 }
  for i := otr1 + 1 to otr2 - 1 do
    summa2 := summa2 + Z[i];
  { считаем сумму элементов, расположенных между первым и последним отрицательными элементами }

  writeln;
  writeln('Summa 1= ', summa1:0:2); { вывод суммы1 на экран }
  writeln('Summa 2= ', summa2:0:2); { вывод суммы2 на экран }

  readln;

end.

Leave a Comment

59 − = 53