uses crt;
var f1,f2,h:file of integer;
a:integer;
begin
clrscr;
assign(f1,'file1');
rewrite(f1);
assign(f2,'file2');
rewrite(f2);
assign(h,'fileh');
rewrite(h);
writeln('Введите в файл целые числа, окончание ввода ноль:');
repeat
readln(a);
write(f1,a);{создание 1 файла}
until a=0;
clrscr;
writeln('Содержание исходного файла:');
reset(f1);
while not eof(f1) do
begin
read(f1,a);
write(a,' ');
if odd(a) then write(f2,a);{создание 2 файла}
write(h,a);{файл 1 в буфер}
end;
writeln;
close(f1);
reset(f2);
writeln('Содержание второго файла:');
reset(f2);
rewrite(f1);
while not eof(f2) do
begin
read(f2,a);
write(a,' ');
write(f1,a);{файл 2 в файл 1}
end;
writeln;
close(f2);
reset(h);
rewrite(f2);
while not eof(h) do
begin
read(h,a);
write(f2,a);{из буфера в файл 2}
end;
erase(h);{уничтожим буфер}
writeln('Файлы после обмена');
writeln('Бывший первый:');
reset(f1);
while not eof(f1) do
begin
read(f1,a);
write(a,' ');
end;
writeln;
close(f1);
writeln('Бывший второй:');
reset(f2);
while not eof(f2) do
begin
read(f2,a);
write(a,' ');
end;
writeln;
close(f2);
readln
end.