Смекни!
smekni.com

Информационно-справочная система, обеспечивающая работу с базой данных Bit (стр. 5 из 5)

repeat.

repeat:- repeat.

При отладке программы ошибки устранялись в три этапа. На

первом этапе интерпритатор языка Пролог сам указывал на синтакси-

ческие ошибки. Такие ошибки возникали при неправильном написании

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

каты в разделе predicates и т.д. Если компиляция прошла успешно,

но программа работала некорректно, приходилось переходить ко вто-

рому этапу - просмотру текста программы и логическому осмыслению

ошибки. На этом этапе были устранены такие ошибки, как вывод все-

го одной записи базы данных в режиме просмотра БД. Причиной это-

му было отсутствие в конце процедуры предиката fail. Ошибка была

устранена. Если не помогал второй этап, приходилось переходить к

третьему - трассировке. Так была установлена следующая ошибка:

при выходе из процедуры Working(4) главное меню выводилось не в

окне "Список абитурьентов", а в окне "Загрузка" (т.е. не удаля-

лось это окно "Загрузка"). После трассировки было выяснено, что в

процедуре не в том месте стоит предикат Repeat ( он стоял в нача-

ле процедуры, а его следовало поставить после предиката

makewindow), из-за чего происходило многократное создание окна

"Загрузка" и только однократное его удаление. Ошибка была исправ-

лена. В процессе конечной отладки и решения контрольных примеров

ошибок в программе обнаружено не было.

Программа "Список абитурьентов" представляет собой инфор-

мационно-справочную систему. В данной программе имеется возмож-

ность создания новой базы данных, являющейся списком зачисленных

студентов. В основной БД присутствуют данные о фамилии, имени и

отчестве абитурьента, его поле, номере экзаменационного листа и

оценках за три экзамена. В дочерней БД имеются те же данные за

исключением пола и того, что оценки за экзамены заменены их сум-

мой.

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

0 - О системе...

1 - Корректировка данных

2 - Уничтожение данных

3 - Просмотр базы

4 - Загрузка базы

5 - Сохранение базы

6 - Создание новой базы

7 - Выход из программы

Для выбора какого-либо пункта следует нажать соответ-

ствующую цифровую клавишу. Вход в каждый пункт сопровождается ко-

ротким звуковым сигналом. При нажатии неверной клавиши на экран

выводится окно с сообщением об ошибке и подсказкой, в каком ин-

тервале следует вводить число. Ниже приводится описание каждого

из пунктов.

При выборе данного пункта на экран выводятся данные о

системе и ее авторе. После нажатия на любую клавишу происходит

выход в главное меню.

При входе в этот пункт на экран выводится подменю:

1 - Изменение данных

2 - Добавление данных

3 - Выход в главное меню

Пункт 1 предназначен для изменения данных в записях. При

входе в него так же появляется подменю:

1 - Известен номер абитурьента

2 - Известна фамилия

Если известен номер абитурьента, то следует ввести цифру

1, если известна фамилия - цифру 2. После этого система запросит

соответственно номер или фамилию. Фамилию следует вводить в том

же виде (сочетание заглавных и строчных букв) в каком она имеет-

ся в базе данных. После определения корректируемой записи систе-

ма выводит на экран все данные об этом абитурьенте и позволяет их

отредактировать, последовательно распечатывая поля записи. Если

данные в текущем поле исправлять не требуется, следует нажать

клавишу <Enter>. После корректировки всех полей система предупре-

дит о необходимости сохранить вновь введенные данные и после на-

жатия любой клавиши выйдет в меню "Корректировка данных".

Пункт 2 меню "Корректировка данных" предназначен для до-

бавления новых записей. После входа в этот режим система последо-

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

ввода выводится запрос, хочет ли пользователь продолжить процесс

ввода новых записей. При утвердительном ответе (нажатии клавиши Д

в верхнем регистре) программа предоставляет возможность ввести

данные еще об одном абитурьенте, после чего процесс повторится.

При отрицательном ответе (нажатии клавиши Н (рус.) на верхнем ре-

гистре) будет выдано предупреждение о необходимости сохранить

вновь введенные данные и после нажатия любой клавиши выйдет в ме-

ню "Корректировка данных".

Пункт 3 служит для выхода в основное меню.

Данный режим служит для удаления записей из базы данных.

Как и в подпункте "Изменение данных" режима "Корректировка дан-

ных" пользователю предоставляется возможность ввести либо номер,

либо фамилию удаляемого абитурьента. После ввода этих данных

произойдет удаление выбранной записи и вывод сообщения, подтвер-

ждающего выполнение данной операции. В случае невозможности уда-

ления записи (например запись с данным номером не существует),

выдается соответствующее сообщение об ошибке.

Данный режим предназначен для просмотра содержимого имею-

щихся баз данных. При входе в этот режим выводится следующее под-

меню:

1 - Просмотр основной базы

2 - Просмотр базы BSTUD

3 - Выход в главное меню

Пункт 1 предназначен для просмотра основной базы данных,

содержимое которой подгружается автоматически (при наличии на

диске файла bit.dat) при запуске информационно-справочной систе-

мы. После выбора этого пункта, на экран выводятся записи основ-

ной БД в виде таблицы. Для возвращения в меню следует нажать лю-

бую клавишу.

Пункт 2 предназначен для просмотра дочерней базы данных

BSTUD. В отличии от основной БД сразу после загрузки она пуста, и

чтобы ее просмотреть следует создать эту БД с помощью пункта 6

или загрузить ее с диска с помощью пункта 4 основного меню. Дан-

ные дочерней базы представляются также в виде таблицы.

Пункт 3 служит для выхода в главное меню.

Данный режим предназначен для загрузки баз данных из фай-

лов. При входе в этот пункт выводится меню:

1 - Загрузить основную базу из выбранного файла

2 - Загрузить основную базу из файла bit.dat

3 - Загрузить базу BSTUD из выбранного файла

4 - Загрузить базу BSTUD из файла bstud.dat

5 - Выход в основное меню

При выборе пунктов 2 и 4 произойдет загрузка соответствен-

но основной и дочерней БД из стандартных файлов bit.dat или

bstud.dat, в случае удачной загрузки будет выдано соответствую-

щее сообщение. После нажатия на любую клавишу произойдет выход в

главное меню.

При выборе пунктов 1 и 3 система запросит имя файла, в ко-

тором содержится соответствующая БД. При успешной загрузке поя-

вится соответствующее сообщение, при сбое появится сообщение об

ошибке.

Пункт 5 предназначен для выхода в главное меню.

Данный режим предназначен для сохранения баз данных. При

входе в данный режим выводится следующее меню:

1 - Сохранить основную базу в указанном файле

2 - Сохранить основную базу в файле bit.dat

3 - Сохранить базу BSTUD в указанном файле

4 - Сохранить базу BSTUD в файле bstud.dat

5 - Выход в основное меню

Работа с его пунктами полностью аналогична работе с подме-

ню режима "Загрузка базы".

Данный режим предназначен для создания дочерней базы дан-

ных. При запуске этого режима дочерняя БД создается автоматичес-

ки, о чем выводится соответствующее сообщение и предупреждение о

необходимости сохранения дочерней БД. После нажатия любой клави-

ши происходит выход в главное меню.

Этот пункт меню предназначен для выхода из информацион-

но-справочной системы в ДОС.

В целях конечной отладки программы и устранения скрытых

ошибок было решено несколько контрольных примеров по работе с

системой во всех режимах. Была создана и отредактирована основ-

ная база данных. с ее помощью были опробованы режимы удаления,

корректировки, создания новой БД, загрузки и сохранения БД. При

решении контрольных примеров ошибок в программе не обнаружено.

В данной курсовой работе были исследованы возможности

языка программирования Пролог для создания информационно-справоч-

ных систем. Можно сделать вывод, что Пролог представляет богатые

возможности для реализации таких систем и написания дружественно-

го интерфейса для общения пользователя с программой.

И.Братко "Программирование на языке Пролог для

искусственного интеллекта"

Дж.Доорс "Пролог - язык программирования будущего"

Ю.Тихонов "МПролог - язык логического

программирования. Версия 2.3"

___