Работа с текстовыми файлами в языке Паскаль - 16 стр.

UptoLike

16
двух, с использованием буфера строк. Возможность использования данного
алгоритма открывается благодаря применённой построчной обработке файлов.
Алгоритм состоит из двух частей. Сначала происходит заполнение буфера
(массив из строк) N первыми строками входного файла. Затем в цикле,
перебирающем оставшиеся строки во входном файле, последовательно
записывается в выходной файл строка из буфера в
позиции I, и затем в ту же
самую позицию в буфере считывается из входного файла очередная строка. При
этом I меняет своё значение на каждой итерации циклически: от 1 до N, затем
снова 1, и так далее. Таким образом, массив из строк выступает в качестве
циклического буфера, и чтение/запись на второй стадии
алгоритма организованы
таким образом, что на одной итерации в выходной файл будет записана строка,
считанная N шагов назад (либо в том же самом цикле, либо на первом шаге
алгоритма, когда происходило только чтение).
Текст программы:
{
Копирование содержимое одного текстового файла
в другой без n последних строк, построчная
обработка
}
program s_3_2;
const
NMax = 100;
var
ASBuffer: array [1 .. NMax] of string;
SInFileName, SOutFileName: string;
FIn, FOut: Text;
I, N: Integer;