Показать сообщение отдельно
  #4  
Старый 13.12.2009, 00:07
ХодячийБаг ХодячийБаг вне форума
Прохожий
 
Регистрация: 12.12.2009
Сообщения: 8
Репутация: 10
Восклицание

Код:
procedure inkol(var B,E: colob; al:colob; nd: dat);
var
ar,q: colob;

begin
 new(q);
 q^.d :=  nd;
 if al=E then
 E := q;
 if al = nil then
 begin
  ar := B;
  al := E;
  B := q;
 end
 else
  ar := al^.ri;
 al^.ri :=  q;
 ar^.le :=  q;
 q^.ri  := ar;
 q^.le  := al;
 end;

Работает ввод отично, проверял. проблема в самой сортировке. Либо поставил не так условие, либо не так устроил цикл.

тоесть код

Код:
while not eof do
begin
 read(x);
 inkol(b,e,nil,x);
end;
работает безупречно...

внутри этой конструкции необходимо сделать сортировку. Программа циклится во внутреннем while и вылетает. В чем ошибка не понимаю, вот и прошу помощи. Заранее спасибо!
Ответить с цитированием