Witam, mam problem z kolejką w pascalu.
Nie do końca wiem jak wczytywać dane do kolejki, by nie wyświetlało mi błędu o źle podanych parametrach.
Czy mógłby ktoś zajrzeć w kod i wytłumaczyć "z czym to się je" ?
Program kol;
type wskkol = ^elkol;
elkol = record
dane : integer;
nast : wskkol
end;
var c:char;
punkt :wskkol;
Procedure Enqueue(nowedane : integer; var koniec:wskkol);
begin
punkt := koniec;
New(koniec);
koniec^.dane := nowedane;
koniec^.nast :=nil;
if punkt <> nil then
punkt^.nast := koniec;
end;
Procedure Dequeue (var poczatek : wskkol);
begin
if poczatek<>nil then
Dequeue := poczatek^.dane;
punkt := poczatek^.nast;
Dispose(poczatek);
poczatek := punkt;
end;
Procedure Wypisz( poczatek: wskkol);
begin
while poczatek <> nil do
begin
Writeln(poczatek^.dane);
poczatek := poczatek^.nast;
end;
end;
begin
read(c);
while c<>'x' do
begin
if c='d' then
read(punkt);Dequeue(punkt);
if c='e' then
read(punkt);Enqueue(punkt);
else
write('!');Writeln(Wypisz(punkt), '!');
end;
end.
Kod napisałam sama, tylko nie do końca wiem jak w linii wczytywania parametrów pozbyć się błędu.
Chodzi mi o sam blok główny programu.
Nie potrzebuję by ktoś mi pisał to od zera, a nawet tego nie chcę. Potrzebuję tylko wskazówki odnośnie wczytywania punktu należącego później do rekordu.