📄 queue.pas
字号:
program KOLEJKA_RM;
uses crt;
type
Wskaznik = ^Element;
Element = RECORD
liczba : integer;
nast : Wskaznik;
end;
var
pocz,kon : Wskaznik;
liczba : integer;
znak : char;
{.....................................................}
procedure Dodaj(var pocz,kon: Wskaznik ; liczba: integer);
var
tmp: Wskaznik;
begin
new(tmp);
tmp^.liczba:=liczba;
tmp^.nast:=nil;
if pocz=nil then
pocz:=tmp
else
kon^.nast:=tmp;
kon:=tmp;
end;
procedure Zdejmij(var pocz: Wskaznik ;var liczba: integer);
var
tmp: Wskaznik;
begin
if pocz<>nil then
begin
tmp:=pocz;
liczba:=pocz^.liczba;
pocz:=pocz^.nast;
dispose(tmp);
end
end;
procedure Wypisz(var pocz: wskaznik);
var
tmp:wskaznik;
begin
tmp:= pocz;
while tmp<>nil do
begin
Writeln(tmp^.liczba);
tmp:= tmp^.Nast;
end;
end;
{.....................................................}
begin
clrscr;
writeln('*****************');
writeln('* KOLEJKA *');
writeln('*****************');
writeln;
writeln ('D - dodaj');
writeln ('Z - zdejmij');
writeln ('W - wypisz');
writeln ('K - koniec');
writeln;
pocz:=nil;
repeat
znak :=UpCase(Readkey);
case Znak of
'D' : begin
write (' Podaj liczbe: '); Readln(liczba);
Dodaj(pocz,kon,liczba);
writeln(' OK');
end;
'Z' : begin
if pocz=nil then
write('***KOLEJKA PUSTA***')
else
begin
Zdejmij(pocz,liczba);
write('------> ');
write('zdjeto: ',liczba);
end;
end;
'W' : begin
wypisz(pocz);
end;
else
if znak <> 'K' then
writeln ('Zly znak.');
end;
writeln;
until (znak= 'K');
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -