Вопрос задан 28.06.2019 в 21:40. Предмет Информатика. Спрашивает Новиков Вадим.

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

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

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Полунина Соня.
// PascalABC.NET 3.2, сборка 1325 от 19.10.2016
begin
  var L:=new List<integer>;
  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]
0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос