type fint=file of integer;
procedure inp(var f:fint); {запись в файл}
var s:integer;
begin
rewrite(f);
writeln(' вводи числа в файл');
while not eof do begin {до нажатия на CTRL+Z}
read(s);
write(f,s) end;
reset(input);
writeln(' закончили запись чисел в файл');
close(f); end;
procedure add(var f:fint);{ дозапись чисел в файл}
var a: integer;
begin {$I-}reset(f); {$1+}
if IoResult=0 then begin
writeln(' будем добавлять числа в файл');
seek(f,filesize(f)); {указатель в конец файла}
while not eof do begin {до нажатия на CTRL+Z}
read(a);
write(f,a) end;
reset(input);
close(f);
writeln(' закочили добавлять числа') end
else writeln('***** ошибка при работе с файлом - add')
end;
procedure out(var f:fint);{ чтение и печать файла}
var s: integer;
begin {$1-} reset(f);{$I+}
if IoResult=0 then begin
writeln(' читаем и печатаем содержимое файла');
while not eof(f) do
begin
read(f,s); {чтение из файла}
writeln(s) end ; {вывод на экран}
close(f);
writeln(' закончили печать файла') end
else writeln('***** ошибка при работе с файлом - out')
end;
var f:fint; name:string; i:byte; {ОСНОВНАЯ ПРОГРАММА}
begin
write('BBeди имя файла ',name);
readln(name);
assign(f,name);
repeat {начало работы с меню}
w riteln('*******************МЕНЮ************************');
writeln('l: запись чисел в файл');
writeln('2: дозапись чисел в файл');
writeln('3: чтение и печать содержимого файла');
write(' введи пункт меню ');
readln(i);
Writeln('***********************************************');
Case i of
l;inp(f); {запись чисел в файл}
2:add(f); {дозапись чисел в файл}
3:out(f); {чтение и печать содержимого файла}
else i:=l0 end;
if i=10 then writeln('pa6oTa окончена');
until i=l 0; {конец работы с меню}
readIn
end.