![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Запутался с синтаксисом не могу осилить, может кто подсказать?
Код:
type link=^elem;
elem=record
val:integer;
val1:string;
next:link
end;
var
L:link;
Form1: TForm1;
implementation
{$R *.dfm}
-------------------------
procedure TForm1.Button10Click(Sender: TObject);
var p,q:link;
f:textfile;
begin
assignfile(f,'File2.txt');
reset(f);
new(L);
readln(f,L.val1);
p:=L;
While not EOF(f) do
begin
new(q);
readln(f,q.val1);
p.next:=q;
p:=q;
end;
p.next:=nil;
CloseFile(f);
ShowMessage('Очередь создана');
end;
procedure TForm1.Button11Click(Sender: TObject);
var p:link;
begin
Label8.Caption:='';
p:=L;
While p<>nil do
begin
Label8.Caption:=Label8.Caption+p.val1+' '+#13;
p:=p.next;
end;
end;
---Вся проблема здесь---
procedure TForm1.Button12Click(Sender: TObject);
var z,q:link;
n,i:integer;
begin
z:=L.next; L.next:=z.next; dispose(z)
end;
end.Удаление сделал, но только следующего элемента в очереди, а надо что бы удаляла запращиваемый, например в LabeledEdit ввёл 4 он удалил 4-й элемент из очереди... Пробовал по разному в итоге либо прога висла, либо не шагала до N-го элемента, либо в ошибку вылетала...запутался уже с ними... Может кто с этим знаком подскажите куда копать и как синтаксис представить. Пробовал с While - очень всё плохо, c For - что-то етсь, но ошибко-ошибко! Последний раз редактировалось Admin, 09.05.2010 в 17:28. |