Сформировать файлы f1 и f2. Формулу для формирования f2 взять с (А). переписать с сохранением порядка следования компоненты файла f1 — в файл f2, а компоненты файла f2 — в файл f1, используя промежуточный файл h. (А) — получить в файле h компоненты файла f типа integer, которые являются нечетными числами — Pascal(Паскаль)

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.

Leave a Comment

+ 75 = 82