Составить программу нахождения максимального значения среди попарных сумм тех элементов массива длины 30, которые находятся на одинаковом расстоянии от его концов (т.е. первый элемент складывается с последним, второй с предпоследним и т. упорядочить его методом перебора. элементы массива принадлежат отрезку [-15. 15]. ( , нужно.)

Tema228328 Tema228328    1   13.08.2019 02:00    1

Ответы
ададсжсжэвжю ададсжсжэвжю  04.10.2020 14:49
// PascalABC.NET 3.2, сборка 1346 от 25.11.2016
// Внимание! Если программа не работает, обновите её версию!

begin
  var n:=30;
  var a:=ArrRandom(n,-15,15); a.Println;
  var mx:=a[0]+a[n-1];
  for var i:=2 to (n-1) div 2 do begin
    var s:=a[i]+a[n-i-1];
    if s>mx then mx:=s
    end;
  Writeln('Максимальная из сумм сходящихся пар: ',mx);
  // сортировка выбором
  var j:=n-1;
  while j>0 do begin
    mx:=a[0];
    var imx:=0;
    for var i:=1 to j do
      if a[i]>mx then begin mx:=a[i]; imx:=i end;
      a[imx]:=a[j];
      a[j]:=mx;
      j-=1
    end;
  a.Println
end.

Пример
-14 9 1 -14 -5 14 -15 -15 -1 -4 -8 -9 1 -12 -11 -3 9 -1 -9 -9 -1 -8 15 -8 5 -13 15 6 9 11
Максимальная из сумм сходящихся пар: 19
-15 -15 -14 -14 -13 -12 -11 -9 -9 -9 -8 -8 -8 -5 -4 -3 -1 -1 -1 1 1 5 6 9 9 9 11 14 15 15
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика