Показать сообщение отдельно
Старый 26.02.2004, 08:35     # 5
Ghost
::VIP::
Звезда первого сезона
Молчун-2004
 
Аватар для Ghost
 
Регистрация: 24.08.2002
Сообщения: 1 575

Ghost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех ГуруGhost Отец (мать) всех Гуру
Цитата:
Да вроде info я ввел. А вот позицию в listе как ввести? Это ж ведь тоже указатель.
Во-первых, позиция - целое число, а не указатель.
Во-вторых, вводить в list его не надо, поскольку расположение элементов в списке может меняться, соответственно, невозможно жестко привязать к какому-либо элементу индекс.
Таким образом, тебе нужно просто дописать прогу, всавив в нее только процедуру вставки нового элемента в нужную позицию. Кажись это будет выглядеть так (тока я не проверял, у меня нет на машине паскаля):
Код:
procedure List_PosItemInsert (var Head: pos_type;
  NewItemPos: integer; NewItemCont: list_info_type); far;
var
  NewItem: pos_type;
begin
  if NewItemPos < 1 then exit;
  if (NewItemPos = 1) or (Head = nil) then begin
    New (NextItem);
    NextItem^.Info := NewItemCont;
    NextItem^.Next := Head;
    Head := NextItem;
  end else begin
    NextItem := Head^.Next;
    List_PosItemInsert (NextItem, NewItemPos - 1, NewItemCont);
    Head^.Next := NextItem;
  end;
end;
__________________
Действовать надо тупо и это лучшее доказательство нашей чистоты и силы!
Ghost вне форума