Дан числовой массив а состоящий из n элементов если отношение числа положительных элементов к числу отрицательных более 2, то все отрицательные элементы этого массива замените на 1, а положительные умножьте на максимальный элемент

sasha60503 sasha60503    3   06.08.2019 02:50    0

Ответы
СлаваКпсс11 СлаваКпсс11  19.08.2020 23:27
Const
  n=15;
var
  i,np,nn,amax:integer;
  a:array[1..n] of integer;
begin
  Randomize;
  Write('Исходный массив: ');
  np:=0; nn:=0;
  for i:=1 to n do begin
    a[i]:=Random(51)-15;
    Write(a[i],' ');
    if a[i]>0 then Inc(np)
    else if a[i]<0 then Inc(nn);
    end;
  Writeln;
  if np/nn>2 then begin
    amax:=a[i];
    for i:=2 to n do
      if a[i]>amax then amax:=a[i];
    Write('Выходной массив: ');
    for i:=1 to n do begin
      if a[i]<0 then a[i]:=1
      else
        if a[i]>0 then a[i]:=a[i]*amax;
      Write(a[i],' ')
      end;
    Writeln
    end
  else Writeln('В массив изменения не вносятся')
end.

Пример работы программы
Исходный массив: 28 8 21 32 0 26 30 11 35 21 14 6 0 -4 -8
Выходной массив: 980 280 735 1120 0 910 1050 385 1225 735 490 210 0 1 1
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика