Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 16.doc
Скачиваний:
17
Добавлен:
20.11.2019
Размер:
336.38 Кб
Скачать

16.4.7. Задача корректировки файла

Задача корректировки файла является одной из основных задач обработки файлов. Рассмотрим ее формулировку.

Исходные данные задачи – корректируемый файл F, файл корректировок G. Результат – откорректированный файл H. Будем считать, что файл F имеет тип OurFile. Тогда файл H имеет тот же тип. Файл корректировок G состоит из записей с вариантами:

Type

CorСomponent = record

Key: Integer;

job: (Include, Change, Exclude); {включить, изменить, исключить}

Case job of

Include, Change: Data: String[20]; Exclude: ()

 end

End;

CorFile = File of CorComponent;

Var G : CorFile;

Это означает, что файл корректировок содержит компоненты, которые нужно включить в основной файл, компоненты, которые нужно исключить из файла и компоненты, содержание кото­рых нужно изменить (с учетом содержания как основного файла, так и файла корректировок).

Файл F предполагается упорядоченным (по ключу), а файл G, вообще говоря, нет. Резуль­та­том должен быть упорядоченный откорректированный файл H.

Решение задачи обычно содержит два этапа:

а) Сортировка файла корректировок G по ключу;

б) Обобщенное слияние файлов F, G в H.

На практике файл G может быть небольшим. В этом случае применяют внутреннюю сортировку. Обобщенный алгоритм слияния производит все три варианта обработки файла F за один прогон.

В заключение заметим, что современные ЭВМ редко активно используют внешние носители с последовательным доступом в решениях задач управления базами данных, поэтому струк­ту­ры данных, в которых хранится информация, как правило, более сложны, чем последова­тель­ные файлы.

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]