Insert before
program P_circular;
{$APPTYPE CONSOLE}
uses
SysUtils;
type
point = ^recpoint ;
recpoint = record
id_mhs : string ;
nama : string ;
alamat : string ;
semester : integer ;
next,prev : point ;
end;
var
head,now,tail : point ;
jawab : char ;
procedure insertBefore ;
begin
new(now) ;
if head = nil then
begin
head := now ;
tail := now ;
end
else
begin
now^.prev := head ;
head^.next := now ;
end;
now^.next :=tail ;
tail^.prev := now ;
tail := now ;
end;
begin
writeln ('INPUT DATA');
writeln ('____________________');
writeln ;
repeat
insertBefore ;
write('masukan id :') ;readln(now^.id_mhs);
write('masukan nama :') ;readln(now^.nama);
write('masukan alamat :') ;readln(now^.alamat);
write('masukan semester :') ;readln(now^.semester);
writeln;
write('Apakah ingin input data lagi (Y/T)? :');readln(jawab);
writeln ;
until upcase(jawab) = 'T' ;
writeln('OUTPUT DATA');
writeln('-------------------');
now := head ; // output
repeat
writeln('ID :', now^.id_mhs);
writeln('nama :', now^.nama);
writeln('alamat :', now^.alamat);
writeln('semester :', now^.semester);
writeln ;
now := now^.next ;
until (now^.next = head^.next) ;
readln ;
end.
No comments:
Post a Comment