Дан массив t1…..t20. Если в нём есть отрицательные элементы, то подставьте вместо них среднее арифметическое массива, иначе умножьте все его элементы на минимальный элемент — Pascal(Паскаль)

program gd;

label 1;

type
  massiv = array [1 .. 20] of real;

var
  m: massiv;
  n, i, p: integer;

procedure if_min(var m: massiv);
var
  min: real;
  i: integer;
begin
  min := m[1];
  for i := 2 to n do
    if m[i] < min then
      min := m[i];
  for i := 1 to n do
    m[i] := m[i] * min;
end;

procedure if_otric(var m: massiv);
var
  sum: real;
  i: integer;
begin
  sum := 0;
  for i := 1 to n do
    sum := sum + m[i];
  for i := 1 to n do
    if m[i] < 0 then
      m[i] := sum / n;
end;

{ ******************* }
begin
  writeln('VVEDITE razmer massiva "N": ');
  readln(n);

  for i := 1 to n do
  begin
    write('m[', i, ']= ');
    readln(m[i]);
  end;
  writeln('Isxodnii Massiv:');
  for i := 1 to n do
    write(m[i]:0:2, ' ');

  for i := 1 to n do
    if m[i] < 0 then
    begin
      if_otric(m);
      goto 1;
    end;

  if_min(m);

1:
  writeln;
  writeln('Preobrazovannii Massiv:');
  for i := 1 to n do
    write(m[i]:0:2, ' ');

  readln;
  readln;

end.

Leave a Comment

90 − = 80