uses crt;
type
filebio = record
npm:string[8];
nirm:string[3];
nama:string[15];
alamat:string[10];
end;
filenirm = record
nirm2:string[3];
masuk:string[10];
akhir:string[10];
end;
var
biodata :array[1..10] of filebio;
tglnirm :array[1..10] of filenirm;
isi:text;
a,x,y:integer;
Procedure tbio;
begin
a:=5;
assign(isi,'biodata2.dat');
reset(isi);
writeln('Biodata Mahasiswa');
writeln('############################################################');
writeln('* NPM * Nirm * NAMA * ALAMAT *');
writeln('############################################################');
for x:=1 to 10 do
begin
readln(isi,biodata[x].npm);
readln(isi,biodata[x].nirm);
readln(isi,biodata[x].nama);
readln(isi,biodata[x].alamat);
write('* ',biodata[x].npm,' * ',biodata[x].nirm,' * ',biodata[x].nama,' * ',biodata[x].alamat:5);
gotoxy(60,a);
writeln('*');
a:=a+1;
end;
close(isi);
writeln('############################################################');
readln;
end;
procedure tnirm;
begin
assign(isi,'filenirm.dat');
reset(isi);
writeln('File NIRM');
writeln('#####################################################');
writeln('* Nirm * Tanggal Masuk * Tanggal Akhir *');
writeln('#####################################################');
for x := 1 to 10 do
begin
readln(isi,tglnirm[x].nirm2);
readln(isi,tglnirm[x].masuk);
readln(isi,tglnirm[x].akhir);
writeln('* ',tglnirm[x].nirm2,' * ',tglnirm[x].masuk,' * ',tglnirm[x].akhir,' *');
end;
writeln('#####################################################');
close(isi);
readln;
end;
procedure daftarmahasiswa;
begin
a:=5;
gotoxy(1,30);writeln('Daftar Mahasiswa');
writeln('#######################################################################');
writeln('* No * NPM * Nirm * NAMA * Tgl masuk * Tgl Akhir *');
writeln('#######################################################################');
for x := 1 to 10 do
begin
write('* ',x,' * ',biodata[x].npm,' * ',biodata[x].nirm,' * ',biodata[x].nama,' *',' *',' *');
for y := 1 to 10 do
if biodata[x].nirm = tglnirm[y].nirm2 then
begin
gotoxy(46,a);
writeln(tglnirm[y].masuk);
gotoxy(60,a);
writeln(tglnirm[y].akhir);
a:=a+1;
end;
end;
writeln('######################################################################');
readln;
end;
begin
clrscr;tbio;
clrscr;tnirm;
clrscr;daftarmahasiswa;
end.