Скачиваний:
106
Добавлен:
23.06.2014
Размер:
105.47 Кб
Скачать
    1. Описание процедур и функций

В программе создается новая запись Poezd со следующими полями:

  • Number – типа integer, данное поле будет содержать номер поезда;

  • КР – типа string длиной 20 символов, поле, которое будет содержать конечный пункт назначения;

  • DN – типа string длиной 15 символов, поле которое будет содержать день недели;

  • Time – типа string длиной 10 символов, поле которое будет содержать время отправления;

  • KOst – типа integer, данное поле будет содержать количество остановок поезда (в программе предусмотрено максимальное количество остановок 100);

  • Ost – строковый массив размером от 1 до 100, будет содержать перечень остановок поезда.

Также в программе создаются следующие переменные:

  • i – переменная типа integer, необходима для организации меню и работы циклов;

  • filename, filenametemp – переменные типа string, необходимы для хранения путей к файлам БД;

  • PoezdF – типа file of Poezd, данная переменная необходима для связи нашей программы с файлом БД на диске (путь к этому файлу будет вводиться пользователем с клавиатуры при запуске программы);

  • PoezdR – типа Poezd, эта переменная необходима для работы с БД Poezd.

Процедура PoezdMenu – создает меню для работы с БД. В этой процедуре при помощи операторов REPEAT CASE UNTIL WRITELN READLN, организовано меню. При вызове данной процедуры происходит очистка экрана, для этого используется оператор CLRSCR, для корректной работы данного оператора в поле USES необходимо подключить модуль Crt.

Процедура AddPoezd – добавляет маршрут в БД. Работа данной процедуры такова:

  • С помощью оператора Assign открывается файл, и вся информация из него записывается в переменную PoezdF;

  • С помощью оператора Reset курсор устанавливается в начальное положение;

  • С помощью операторов WRITE и READ создаем интерфейс для ввода номера поезда, конечного пункта назначения, дня недели, времени отправления, количества остановок и перечня остановок, присваиваем введенные значения соответствующим полям переменной PoezdR;

  • С помощью оператора WRITE записываем значения полей переменной PoezdR в БД;

  • Закрываем файл при помощи оператора CLOSE.

Процедура DeletePoezd – удаляет маршрут из БД. Работа данной процедуры такова:

  • Для работы данной процедуры нам потребуются дополнительные переменные. Переменная temp – типа file of Poezd будет содержать временную БД. Переменная Nom – типа integer, этой переменной будет присваиваться номер поезда, введенный пользователем с клавиатуры. Переменная f – типа boolean, с помощью этой переменной мы будем отслеживать наличие введенного номера поезда в БД;

  • С помощью оператора Assign открывается файл, и вся информация из него записывается в переменную PoezdF;

  • С помощью оператора Assign создаем временный файл, и вся информация из него записывается в переменную temp;

  • С помощью операторов WRITE и READ создаем интерфейс для ввода номера поезда с клавиатуры и присваиваем введенное значение переменной Nom;

  • Создается цикл, в теле цикла при помощи условного оператора сравниваем значение поля Number БД со значением переменной Nom. Если значения не равны то вся запись из основной БД добавляется во временную БД, иначе не добавляется;

  • Закрываем файлы основной и временной БД при помощи оператора CLOSE;

  • Удаляем файл основной БД при помощи оператора Erase;

  • Переименовываем файл временной БД в файл основной БД при помощи оператора Rename.

Процедура EditPoezd – редактирует маршрут в БД. Работа данной процедуры аналогична работе процедуры DeletePoezd. За исключением одного момента: маршрут не удаляется из БД, а заменяется на маршрут с вновь введенными значениями, для ввода этих значений создан специальный интерфейс аналогичный интерфейсу из процедуры AddPoezd.

Процедура ViewPoezd – выводит маршрут на экран. Работа данной процедуры такова:

  • С помощью оператора Assign открывается файл, и вся информация из него записывается в переменную PoezdF;

  • С помощью оператора Reset курсор устанавливается в начальное положение;

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

  • Закрываем файл при помощи оператора CLOSE.

Процедура FindPoezd – находит в БД все номера поездов, которые останавливаются в заданном городе, и записывает их в текстовый файл. Работа данной процедуры такова:

  • Для работы данной процедуры нам потребуются дополнительные переменные. Переменная gorod – типа string, этой переменной будет присваиваться город, введенный пользователем с клавиатуры. Переменная k – типа integer будет содержать количество найденных поездов. Переменная TPoezdF – типа Text, это и есть наш текстовый файл, в который будем записывать номера найденных поездов;

  • Переменной k присваиваем значение равное 0;

  • С помощью оператора Assign открывается файл, и вся информация из него записывается в переменную PoezdF, также создаем текстовый файл;

  • С помощью оператора Reset курсор устанавливается в начальное положение;

  • С помощью оператора Rewrite перезаписываем текстовый файл, и курсор устанавливается в начальное положение;

  • С помощью операторов WRITE и READ создаем интерфейс для ввода города с клавиатуры и присваиваем введенное значение переменной gorod;

  • Создается цикл в нем подцикл, в теле подцикла при помощи условного оператора сравниваем значение поля Ost БД со значением переменной gorod. Если значения равны, то выводим значение поля Number, соответствующей записи, в текстовый файл и значение переменной k увеличиваем на единицу;

  • Закрываем открытые файлы при помощи оператора CLOSE;

  • Выводим значение переменной k на экран.

В основном тексте программы происходит очистка экрана при помощи оператора ClrScr. Создается интерфейс для ввода пути к файлу БД при помощи операторов WRITE и READ. Вызывается процедура PoezdMenu.

Соседние файлы в папке Курсовой_вар10_Информационные технологии обработки данных