Паскаль. списки. формировать списки из n элементов. добавить элемент а перед вторым максимальным элементом (2,100,5,99*,17). удаление первого максимального элемента списка (2,5,а,99,17). выполнить сортировку списка по возрастанию. после выполнения каждой операции выводить список на экран.

lainzord lainzord    2   28.09.2019 14:30    0

Ответы
olgadyra olgadyra  09.10.2020 00:50
// PascalABC.NET 3.4.2, сборка 1790 от 15.09.2018// Внимание! Если программа не работает, обновите версию!

begin

 var L := new List<integer>;

 L.AddRange(Seq(2, 100, 5, 99, 17));

 L.Println;

 var A := ReadInteger('A=');

 var s:=L.ToArray.Select((v, i)-> (v, i)); // в памяти не хранится!

 // Ищем 2- максимальный элемент. Сортируем по убыванию, берем 2-й.

 var i := s.OrderByDescending(t -> t[0]).Skip(1).First[1];

 L.Insert(i,A); // вставка

 L.Println;

 L.Remove(L.Max); // удаление

 L.Println;

 L := L.Sorted.ToList; // сортировка

 L.Println

end.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика