Используя линейный односвязный список найти введённое с клавиатуры число, удалить число стоящий перед найденным за 1 позицию и вставить число, введённый с клавиатуры, перед найденным .Pascal.

Используя линейный односвязный список найти введённое с клавиатуры число, удалить число стоящий перед найденным за 1 позицию и вставить число, введённый с клавиатуры, перед найденным .Pascal.
Гость
Ответ(ы) на вопрос:
Гость
// PascalABC.NET 3.2, сборка 1325 от 19.10.2016 begin   var L:=new List;   Writeln('Вводите целые числа, окончание ввода по -777');   var n:integer;   repeat     n:=ReadInteger;     if n<>-777 then L.Add(n);   until n=-777;   Writeln('Исходный список'); Writeln(L);   n:=ReadInteger('Введите искомое число:');   var p:=L.FindIndex(k->k=n); // искомый элемент   if p<0 then Writeln('Искомый элемент в списке не найден')   else begin     Writeln('Элемент ',L.Item[p-2],' удален');     L.RemoveAt(p-2); Writeln(L); // удалили и убедились     n:=ReadInteger('Введите число для вставки:');     L.Insert(p-1,n); Writeln(L)     end end. Пример Вводите целые числа, окончание ввода по -777 1 6 12 73 -15 34 18 0 24 -777 Исходный список [1,6,12,73,-15,34,18,0,24] Введите искомое число: 34 Элемент 73 удален [1,6,12,-15,34,18,0,24] Введите число для вставки: 1000 [1,6,12,-15,1000,34,18,0,24]
Не нашли ответ?
Ответить на вопрос
Похожие вопросы