type
tip1=record
n:byte;
town,time0,time1:string;
freeplace:integer;
end;
var
d:tip1;
i,max_d:integer;
f:file of tip1;
PROCEDURE input_d;
BEGIN
write('Введите количество рейсов: ');
readln(max_d);
writeln;
writeln('* * * Заполнение данных о рейсах * * *');
writeln;
{$I-}
assign(f,'data.dat');
reset(f);
seek(f,filesize(f));
{$I+}
if ioresult<>0 then rewrite(f);
for i:=1 to max_d do
begin
writeln('----- ',i,' -----');
write('Введите номер рейса: ');
readln(d.n);
write('Введите город прибытия: ');
readln(d.town);
write('Введите время отправления: ');
readln(d.time0);
write('Введите время прибытия: ');
readln(d.time1);
write('Введите количество свободных мест: ');
readln(d.freeplace);
write(f,d);
end;
close(f);
writeln;
writeln('Данные были сохранены в файл!');
readln;
END;
PROCEDURE view_d;
var
x:string;
tmp_d:tip1;
BEGIN
{$I-}
assign(f,'data.dat');
reset(f);
{$I+}
if ioresult<>0 then
begin
writeln('Файл не найден!');
readln;
exit;
end;
write('Введите название города: ');
readln(x);
writeln;
while not eof(f) do
begin
read(f,tmp_d);
if tmp_d.town=x then
begin
writeln('Номер рейса: ',tmp_d.n);
writeln('Город: ',tmp_d.town);
writeln('Время отправления: ',tmp_d.time0);
writeln('Время прибытия: ',tmp_d.time1);
writeln('Количество свободных мест: ',tmp_d.freeplace);
writeln('--------------------------------');
end;
end;
close(f);
writeln('Поиск завершен!');
readln;
END;
BEGIN
input_d;
view_d;
END.