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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.02.2012, 20:03   #1
loki_man
 
Регистрация: 20.02.2012
Сообщений: 4
По умолчанию Двусвязный Список.

Помогите, пожалуйста!!! Выдает ошибко 216.
Вот программа:

Цитата:
program P1;
uses crt;
type
PMyType = ^TMyType;
TMyType = record
Info: Integer;
Prev: PMyType;
Next: PMyType;
data: Integer;
end;
PMyType2 = ^PMyType;

var
First: PMyType;
Cursor: PMyType;
LastNegItem: PMyType;
i: Integer;
PMTmytype2;

procedure AddToEnd (list : PMyType2; y : integer);
var
prior : PMyType;
begin
prior := nil;
while list^ <> nil do
begin
prior := list^;
list := @list^^.next
end;

New (list^);

with list^^ do
begin
data := y;
next := nil;
prev := prior
end
end;

procedure AddToBegin (list : PMyType2; t : integer);
var
l : PMyType;
begin
if list^ = nil then
begin
AddToEnd (list, t);
exit
end;

while list^^.prev <> nil do
list := @list^^.prev;

New (l);

l^.data := t;
l^.prev := nil;
l^.next := list^;
list^^.prev := l
end;

begin
clrscr;
Randomize;
new(First);
First^.Info := Random(100);
First^.Next := nil;
First^.Prev := nil;
for i := 1 to 19 do
begin
new(Cursor);
Cursor^.Info := Random(100);
Cursor^.Next := First;
Cursor^.Prev := nil;
First^.Prev := Cursor;
First := Cursor;
end;




WriteLn('Elementu: ');
Cursor := First;
repeat
Write(Cursor^.Info, ' ');
Cursor := Cursor^.Next;
until Cursor = nil;
WriteLn(' ');

addtoend(PMT,1);
addtobegin(PMT,1);

readln
end.
loki_man вне форума Ответить с цитированием
Старый 23.02.2012, 20:48   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

На каком операторе?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 23.02.2012, 22:59   #3
loki_man
 
Регистрация: 20.02.2012
Сообщений: 4
По умолчанию

я вот сначала настрочил просто, чтобы создало список, вышло без проблем!
потом добавил две процедурки, типа одна добавляет в начало списка елемент, а другая в конец...и выдает ошибку, может я сами процедуры не там вписал?
loki_man вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
c++ двусвязный список world12_tk Помощь студентам 1 15.10.2011 12:36
Двусвязный список Даsha Помощь студентам 3 26.06.2011 11:45
Двусвязный список(C++) fable0097 Помощь студентам 0 16.05.2011 16:03
двусвязный список Olezhka Помощь студентам 1 23.03.2011 11:00
Двусвязный список kruserg Паскаль, Turbo Pascal, PascalABC.NET 1 28.04.2009 10:37