Дан одномерный массив А(N). Составить программу. Все отрицательные элементы заменить на сумму, а положительные на полу сумму предшествующих и последующих элементов этого массива — Pascal(Паскаль)

program fyr;

uses crt;

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

type
  massiv = array [1 .. N] of real; { объявление массива }

var
  A: massiv; { инициализация массива }
  i, nn: integer; { переменные для обслуживания массива }
  summ: real; { переменная суммы }

begin
  write('N= ');
  readln(nn); { считываем размер массива }

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

  summ := 0;
  for i := 1 to nn do
    summ := summ + A[i]; { вычисляем сумму массива }

  for i := 1 to nn do
    if A[i] < 0 then
      A[i] := summ
    else
      A[i] := (summ - A[i]) / 2; { по условию заполняем массив }
  writeln('Vot preobrazovannyi massiv: ');
  for i := 1 to nn do
    write(A[i]:0:2, ', '); { выводим преобразованный массив }

  readln;

end.

Leave a Comment

38 − 33 =