ini yg lebih lengkap lagi...
program RESPONSI;
uses wincrt;
{const
max=10;}
type
data=array [1..100]of char;
recqueue=record
info : data;
depan,blkg : 0..100;
end;
var
antri : recqueue;
n,i : integer;
pilih,tanya : char;
procedure inisialisasi;
begin
antri.depan:=0;
antri.blkg:=0;
end;
procedure input;
begin
writeln('MEMASUKKAN ELEMEN KE DALAM ANTRIAN');
writeln('==================================');
write('Banyaknya elemen = ');readln(n);
for i:=1 to n do
begin
write('Elemen ke ',i,' = ');
readln(antri.info);
Inc(antri.blkg);
end;
end;
procedure Baca;
begin
writeln('MENAMPILKAN ELEMEN DALAM ANTRIAN');
writeln('================================');
for i:=1 to n do
begin
writeln('Elemen ke ',i,' = ',antri.info);
inc(antri.depan);
end;
end;
procedure Hapus;
begin
writeln('MENGHAPUS ELEMEN DALAM ANTRIAN');
writeln('==============================');
for i:=1 to n do
begin
antri.blkg:=antri.depan;
antri.depan:= antri.depan - 1;
writeln(antri.info);
{dec(antri.depan);
dec(antri.blkg);
writeln(antri.info); }
end;
end;
procedure menu;
begin
tanya:='Y';
while tanya in ['Y','y'] do
begin
clrscr;
writeln(' MENU PILIHAN ANTRIAN ');
writeln('=======================================');
writeln('[1].INPUT ELEMEN');
writeln('[2].BACA ELEMEN');
writeln('[3].HAPUS ELEMEN');
writeln('[4].KELUAR');
writeln('---------------------------------------');
write('PILIHAN ANDA = ');readln(pilih);
writeln;
end;end;
procedure mulai;
begin
clrscr;
writeln('------------------------------------------------');
writeln(' CONTOH PROGRAM ANTRIAN DISERTAI MENU PILIHAN ');
writeln(' TEKAN ENTER UNTUK MEMULAINYA ');
writeln('------------------------------------------------');
readln;
clrscr;
end;
begin
clrscr;
mulai;
repeat
menu;
case pilih of
'1':begin
input;
writeln;
end;
'2':begin
baca;
writeln;
end;
'3':begin
hapus;
writeln;
end;
'4':begin
gotoxy(20,18);
write('Ingin keluar dari aplikasi ini [Y/T]:');readln(tanya);
donewincrt;
end;
end;
end.