uses
dos;
type
tstudent=record
name,surname:string[10];
dobyear:1980..2007;
dobmonth:1..12;
dobday:1..31;
end;
var
st:array[1..25]of tstudent;
fst:file of tstudent;
b:tstudent;
i,k,y,m,d,dn:word;
begin
{Ввод данных}
for i:=1 to 3 do
begin
writeln('Student ',i);
write('Imya: ');
readln(st[i].name);
write('Familiya: ');
readln(st[i].surname);
write('Data rojdeniya (dd mm yyyy): ');
read(st[i].dobday);
read(st[i].dobmonth);
read(st[i].dobyear);
readln;
end;
{Сортировка по старшинству}
for k:=3 downto 2 do
for i:=1 to k-1 do
if st[i].dobyear>st[i+1].dobyear then
begin
b:=st[i];
st[i]:=st[i+1];
st[i+1]:=b;
end;
assign(fst,'stud.txt');
rewrite(fst);
{Запись данных в файл}
for i:=1 to 3 do write(fst,st[i]);
close(fst);
getdate(y,m,d,dn);{Определение текущей даты}
{Вывод на экран студентов, возраст которых < 19}
for i:=1 to 3 do if (y-st[i].dobyear)<19 then
writeln(st[i].surname,' ',st[i].name,' ',
st[i].dobday,' ',st[i].dobmonth,' ',st[i].dobyear);
readln;
end.