Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Stud_2_1 / Kurs_Rab / п3

.doc
Скачиваний:
18
Добавлен:
03.03.2016
Размер:
30.72 Кб
Скачать

3.О п и с а н и е п р о г р а м м ы K u r s r a b

Программа Kursrab состоит из пяти модулей:

- DesUnit - глобальные описания констант, типов и переменных;

- BasUnit - сервисные процедуры и функции;

- ChekUn - ввод и контроль корректности текстовых файлов;

- WorkUnit - обрабатывающие процедуры и функции;

- Kursrab - основная программа.

.

Количество хранимых и обрабатываемых документов в АУС является переменной величиной. В процессе эксплуатации АУС типичными операциями являются добавление новых документов к имеющемуся архиву, удаление части документов, изменение содержания некоторых документов.

В программе Kursrab используются 5 файлов. В текстовом файле FileInput содержатся исходные документы. Текстовый файл FileAdd предназначен для документов, добавляемых в архив; строки этого файла имеют такой же вид, как и строки файла FileInput. Файл FileOut является типизированным. В текстовый файл FileRes могут быть записаны по указанию пользователя результаты обработки архива. В файл FileError, объявленный локально в модуле ChekUn, производится запись протокола проверки корректности исходных данных.

Информация для текстовых файлов подготавливается вручную с клавиатуры ПЭВМ, что заранее предполагает наличие в ней различного рода ошибок. Содержимое текстового файла легко изменить с помощью любого текстового редактора, что создает опасность внесения в исходную информацию умышленных или неумышленных искажений. Поэтому использоватъ текстовые файлы как непосредственный источник обрабатываемых данных в АУС нецелесообразно.

В реальных системах исходные документы, содержащиеся в текстовых файлах, тщательно контролируются в программе с целью обнаружения возможных ошибок. После исправления обнаруженных ошибок содержимое текстового файла выдается на печать для визуального контроля; тщательно проверенные документы программно переписываются в типизированные файлы, представляющие собой архив системы.

С точки зрения машинной обработки типизированные файлы имеют ряд преимуществ по сравнению с текстовыми файлами:

- возможность прямого доступа;

- более экономное размещение данных в памяти;

- более быстрое выполнение операций ввода-вывода.

В текстовом файле информация имеет литерное представление (каждый символ текста или цифра числа занимают отдельный байт). В типизированном файле представление информации не отличается от внутримашинного. Поэтому при обращении к текстовому файлу затрачивается значительное машинное время на преобразование информации из внешнего представления во внутреннее (или наоборот).

В программе Kursrab для хранения архива предусмотрен файл FileOut. При переписи информации из файла FileInput в файл FileOut предварительно производится контроль корректности исходных данных. Контролю подвергается также содержимое текстового файла FileAdd. Результаты обработки архива выдаются на экран, а также по указанию пользователя могут печататься на принтере и записываться в выходной текстовый файл FileRes.

В программе Kursrab предусмотрены следующие режимы работы:

- контроль текстовых файлов;

- создание архива;

- сортировка компонентов архива;

- печать архива;

- добавление компонентов в архив;

- удаление компонента из архива;

- изменение компонента в архиве;

- обработка архива.

Выбор режимов работы реализован в основной части программы. Вначале на экран выдается запрос о режиме; после ввода с клавиатуры ответа (0..9) оператор Case выполняет обращение к процедуре, определяющей соответствующий режим.

При вводе числового ответа с клавиатуры существует определенная вероятность ошибочного набора (например, буква вместо цифры). При вводе ответа с помощью оператора Read это вызвало бы прерывание программы и, как следствие, необходимость ее повторного запуска.

Чтобы блокировать такое прерывание, ввод переменной KeyRegime производится с помощью процедуры GetNumber, выполняющей контроль формата вводимого числа и допустимого диапазона его представления.

При ошибке ввода программа выдает соответствующее сообщение и предлагает пользователю повторить ввод.

Запрос режима работы повторяется оператором Repeat до тех пор, пока не будет получен ответ KeyRegime=0. Это дает возможность пользователю любое количество раз и в любом порядке задавать необходимые режимы работы программы.

Соседние файлы в папке Kurs_Rab