Посреди первых трёх элеметов найдите наибольший элемент и его индекс. Среди

Посреди первых трёх элеметов найдите наибольший элемент и его индекс. Среди последних трёх частей найдите минимальный элемент и его индекс . Итог выведите на экран . Паскаль

Задать свой вопрос
1 ответ
// PascalABC.NET 3.3, сборка 1583 от 25.11.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ArrRandom(ReadInteger('n='),-50,50); a.Println;
  var s:=a.Select((v,i)-gt;(v,i)); // последовательность в памяти не хранится
  var max:=s.Take(3).Max(t-gt;t[0]);
  var imax:=a.IndexesOf(t-gt;t=max).First;
  var min:=s.TakeLast(3).Min(t-gt;t[0]);
  var imin:=a.IndexesOf(t-gt;t=min).Last;
  Writeln('Наибольший из первых 3-х - ',imax+1,': ',a[imax]);
  Writeln('Малый из заключительных 3-х - ',imin+1,': ',a[imin]);
end.

Пример:
n= 17
-34 37 26 41 19 24 19 4 -7 -31 5 -23 -40 -40 -31 -28 -12
Наибольший из первых трех - 2: 37
Малый из последних 3-х - 15: -31
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт