uses crt;
type fail=file of integer;
function getInt(name:string;k:integer):integer;
var f:fail;
a:integer;
begin
assign(f,name);
{$I-} reset(f); {$I+}
if IOResult <> 0 then
begin
getInt:=0;
exit;
end;
if filesize(f)<k+1 then
begin
getInt:=0;
exit;
end;
seek(f,k);
read(f,a);
getInt:=a;
end;
var f:fail;
a,i,k:integer;
s:string;
begin
clrscr;
assign(f,'filef');
rewrite(f);
writeln('Введите в файл целые числа, окончание ввода 0:');
repeat
readln(a);
write(f,a);
until a=0;
clrscr;
writeln('Содержание файла:');
reset(f);
while not eof(f) do
begin
read(f,a);
write(a,' ');
end;
close(f);
writeln;
for i:=1 to 5 do
begin
write('Имя файла: ');
readln(s);
repeat
write('Номер числа от 0 k=');
readln(k);
until k>=0;
if getInt(s,k)=0 then
writeln('Файл не существует, либо в нем нет элемента № ',k)
else writeln('Элемент номер ',k,'=',getInt(s,k));
end;
writeln;
write('Работа программы завершена, нажмите Enter для выхода.');
readln
end.