Предмет: Информатика,
автор: nefes1477
Хееелп. Паскаль. Списки. Формировать списки из N элементов. Добавить элемент А перед вторым максимальным элементом (2,100,5,99*,17). Удаление первого максимального элемента списка (2,5,А,99,17). Выполнить сортировку списка по возрастанию. После выполнения каждой операции выводить список на экран.
Аноним:
на днях именно эта задача уже была решена.
Ответы
Автор ответа:
0
// 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.
Похожие вопросы
Предмет: Оʻzbek tili,
автор: Аноним
Предмет: Литература,
автор: sofiakluzeva
Предмет: Английский язык,
автор: ruxsoraaslonova34
Предмет: Информатика,
автор: sevgiya12
Предмет: Математика,
автор: ZaiLA1