Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2013, 19:35   #1
margo_rita_92
Новичок
Джуниор
 
Регистрация: 18.03.2013
Сообщений: 2
По умолчанию вставка в список

Помогите пожалуйста переделать процедуру всавки в список.Надо чтобы элементы вставлялись в упорядоченном порядке.Вот процедура:
Код:
Procedure Insert(var x:pt; y:integer);
  Var t:pt;
 Begin
  writeln('введите элемент, который надо вставить');
  readln(y);
   t:=x^.next; {1}
  New(x^.next); {2}
  x^.next^.data:=y; {3}
  x^.next^.next:=t; {4}
 End;
 
 Procedure Ins_List(Var x:pt;y:Integer);
 Begin
  If x=nil Then Begin
       New(x);
       x^.data:=y;
       x^.next:=nil;
    End  
   Else Insert(x,y);
 End;



________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось margo_rita_92; 24.03.2013 в 21:15.
margo_rita_92 вне форума Ответить с цитированием
Старый 24.03.2013, 20:06   #2
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

А что такое упорядоченный порядок?

PS. И оформите, пожалуйста, код по правилам форума.
s-andriano вне форума Ответить с цитированием
Старый 24.03.2013, 20:20   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Марго_Рита,
во-первых, у Вас неправильно (нелогично) написана процедура Insert - Вы переменную y уже передаёте в процедуру, зачем её ЕЩЁ раз спрашивать.
во-вторых, вставить элемент так, чтобы список был упорядоченным, это же просто. нужно просто найти элемент, который больше вставляемого, и вставить перед ним.
Если такого элемента не нашли, тогда просто вставляем новый элемент в конец списка...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование, перемещение листа, выподающий список список albih Microsoft Office Excel 1 31.05.2012 12:49
Создать односвязный список и вывести его на экран. Из этого списка создать новый список по указанному ниже правилу и новый список San111 Паскаль, Turbo Pascal, PascalABC.NET 1 15.05.2012 22:08
Список с заглавным звеном, из текстового файла получить список из записей и по нему уже сделать задание Zigfried Помощь студентам 2 04.10.2010 20:29
связать список строк и список целых чисел lirikoff Помощь студентам 5 31.08.2010 13:23
Данные-проверка-список (список на другом листе) Inbox Microsoft Office Excel 7 26.12.2008 01:43