Разработка информационно-справочной системы "Каталог строительных объектов" Prolog

Разработка информационно-справочной системы "Каталог строительных объектов" Prolog

Встроенные в Пролог предикаты работы с окнами позволяют создать дружественный интерфейс для работы пользователя с информационно - справочной системой. 1. ПОНЯТИЕ ОБ ИНФОРМАЦИОННО-СПРАВОЧНЫХ СИСТЕМАХ И ИХ ПРОГРАММНОЙ РЕАЛИЗАЦИИ Информационно-справочные системы - это программы-оболочки, служащие для управления массивами и базами данных. В наш век всеобщей компьютеризации информационно-справочные системы значительно облегчают труд человека во всех отраслях народного хозяйства.

Значительно упростилась работа московской милиции по обнаружению угнаного транспорта после создания в Москве компьютерных баз данных по угнаным автомобилям.

Бухгалтерам предприятий и фирм теперь не нужно перебирать горы бумаг, чтобы получить все данные о сотруднике: достаточно загрузить информационно-справочную систему и она в удобной форме выдаст всю необходимую информацию.

Области применения информационно-справочных систем воистину безграничны: это ведение статистики удоя скота на ферме, составление каталогов книг в библиотеках и произведений искусства в музеях, сбор данных о наличии рабочих вакансий в данном регеоне и многие другие. Одним из способов програмной реализации информационно-справочной системы является использование для ее создания языка логического программирования Пролог. В данной реализации языка содержится множество встроенных предикатов, существенно облегчающих написание таких систем. 2.БАЗА ДАННЫХ И СПОСОБЫ ЕЕ ПРЕДСТАВЛЕНИЯ База данных в простейшем случае - упорядоченная структура данных в виде таблицы, каждая запись которой может объединять разнотипные данные, причем все записи одной базы имеют одинаковую структуру.

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

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

Исходя из вышеперечисленных соответствий Пролог является прекрасным средством для реализации реляционных баз данных. 3.РАЗРАБОТКА СИСТЕМНОГО МЕНЮ Все режимы программы активизируются с помощью меню, которое реализовано с помощью процедуры start_patch. Для активизации какого либо режима пользователю следует нажать цифровую клавишу, соответствующую выбранному пункту меню. Меню данной программы состоит из семи пунктов: 0 - О системе... - вывод данных о системе 1 - Корректировка данных - режим корректировки данных 2 - Уничтожение данных - режим удаления данных 3 - Просмотр базы - режим просмотра базы 4 - Загрузка базы - режим загрузки базы 5 - Сохранение базы - режим сохранения базы 6 - Создание новой базы - режим создания новой базы 7 - Просмотр-добавление - режим просмотра-добавления 8 - Выход из программы - выход из программы На следующей странице представлена графическая структура меню. 5. РАЗРАБОТКА ПРОЦЕДУР Процедуры создавались на основе требований, изложенных в задании к курсовой работе. 5.1 ОСНОВНОЙ ПРОЦЕДУРЫ START С помощью процедуры START в разделе GOAL инициируется начало выполнения программы. Эта процедура запускает процедуру начальной загрузки базы данных LOAD, после чего передает управление процедуре вывода главного меню PATCH. 5.2 ВЫВОДА ГЛАВНОГО МЕНЮ PATCH Эта процедура выводит список пунктов главного меню и ожидает от пользователя ввода числа, которое будет занесено в переменную C. После этого вызывается процедура обработки основных режимов PROCESS, в которую переменная C передается в качестве аргумента. В процедуре использован предикат Repeat, в связи с этим после возврата из процедуры RUN в случае, если C не равно 8 происходит повторный вывод пунктов меню и ожидание ввода числа. 5.3 АВТОМАТИЧЕСКОЙ ЗАГРУЗКИ БД LOAD Процедура LOAD предназначена для автоматической загрузки основной базы данных при запуске программы. Это значительно облегчает работу с системой, так как не требуется при запуске программы подгружать основную БД из режима 'Загрузка'. Процедура LOAD проверяет существование на диске файла ilgiz.dat с помощью встроенного предиката existfile и подгружает БД в память с помощью предиката consult. В случае отсутствия файла выдается сообщение об ошибке. 5.4 ВЫВОДА ИНФОРМАЦИИ О СИСТЕМЕ PROCESS(0) Данная процедура выводит информацию о языке, на котором написана система и данные о создателе. 5.5 КОРРЕКТИРОВКИ ДАННЫХ PROCESS(1) Процедура process(1) служит для вывода меню режима коррекции данных, находящихся в БД, и внесения новых записей.После активизации процедура вызывает вспомогательную процедуру SELECT,которая выводит меню в котором имеются разделы базы данных ,покоторым возможен поиск нужной записи.Активизация режимов происходит аналогично главному меню с помощью нажатия соответствующей цифровойклавиши.

Считанное с клавиатуры число заносится в переменную X, послечего вызывается процедура SEL, аргументом которой служит X. С помощью процедуры SEL по заданному признаку находится нужная запись,которая выводится в PROCESS(1) с последующей ее корректировкой.В процедуре process(1) также применен предикат Repeat, с помощью которого реализован повторный вывод меню в случае ошибки ввода. 5.6 УДАЛЕНИЯ ЗАПИСЕЙ PROCESS(2) Данная процедура предназначена для удаления записей из базы данных. В программе предусмотрена возможность задания какого-либо раздела из базы данных , по которому может быть найдена удаляемая запись. Эта возможность также реализуется процедурой SELECT, описанной ниже.

Процедура SELECT возвращает номер выбранной записи и с помощью встроенного предиката retract запись удаляется из базы данных. 5.7 ПРОСМОТРА БАЗЫ ДАННЫХ PROCESS(3) Процедура PROCESS(3) осуществляет просмотр содержимого БД.Процедура PROCESS(3) реализована в стиле процедур MENU и PROCESS(1) с применением процедуры Repeat. 5.8 ЗАГРУЗКИ БАЗЫ PROCESS(4) Данная процедура запрашивает у пользователя имя файла содержащего базу данных.Собственно загрузка баз данных осуществляется процедурой lod аргументом которой служит переменная N, считанная с клавиатуры при вводе пользователем имени файла. В процедуре PROCESS(4) также применена процедура Repeat. 5.9 ВЫВОДА МЕНЮ СОХРАНЕНИЯ PROCESS(5) Процедура PROCESS(5) аналогична PROCESS(4). Для сохранения баз данных применяется процедура SVE, рассмотренная ниже, аргументом которой является переменная I. 5.10 СОЗДАНИЕ НОВОЙ БД PROCESS(6) Данная процедура служит для создания новой базы данных.

Процедура работает следующим образом:При помощи процедуры SELECT у пользователя запрашивается раздел базы данных по которому он хочет создать новую базу и затем,используя процедуру SEL,заносит в новую базу записи соответствующие заданному признаку. Для того, чтобы были обработаны все записи, используется fail. После создания новой БД выдается соответствующее сообщение и предупреждение о том, чтобы пользователь не забыл сохранить вновь созданую БД. 5.11 ПРОСМОТРА-ДОБАВЛЕНИЯ PROCESS(7) Данная процедура служит для просмотра-добавления базы данных.

Процедура работает следующим образом:пользователя просят ввести номер нужной ему записи и,если запись существует,она выводится на экран. В противном случае выводится сообщение о том,что запись не существует и просьба, повторив введенный номер, заполнить запись.При окончании ввода выводится запрос на продолжение ввода данных и условие выхода в основное меню.В зависимости от выбора пользователя процесс либо повторяется, либо прекращается. 5.12 ВЫХОДА ИЗ ПРОГРАММЫ PROCESS(8) Данная процедура состоит из отсечения, которое запрещает дальнейший перебор.

 

Категории

Технология

История экономических учений

Менеджмент (Теория управления и организации)

Философия

Химия

Административное право

Международные экономические и валютно-кредитные отношения

Математика

Бухгалтерский учет

Микроэкономика, экономика предприятия, предпринимательство

Радиоэлектроника

Физика

Теория систем управления

Маркетинг, товароведение, реклама

Банковское дело и кредитование

Право

Политология, Политистория

Охрана природы, Экология, Природопользование

Педагогика

Психология, Общение, Человек

Медицина

Ветеринария

Теория государства и права

Физкультура и Спорт

Сельское хозяйство

Уголовное право

Техника

Программирование, Базы данных

Программное обеспечение

Биология

Уголовное и уголовно-исполнительное право

Архитектура

История

Здоровье

Религия

Социология

Материаловедение

Криминалистика и криминология

Государственное регулирование, Таможня, Налоги

Экономическая теория, политэкономия, макроэкономика

Металлургия

Биржевое дело

Компьютерные сети

Уголовный процесс

Римское право

География, Экономическая география

Разное

Ценные бумаги

История государства и права зарубежных стран

Литература, Лингвистика

Историческая личность

Военная кафедра

История отечественного государства и права

Транспорт

Авиация

Астрономия

Космонавтика

Гражданская оборона

Подобные работы

Данные и информация

echo "Объектом изучения этой теоpии является инфоpмация - понятие во многом абстpактное, сушествующее 'само по себе' вне связи с конкpетной областью знания, в котоpой она используется. Это обстоятельс

Лекции по высокоуровневым методам информатики и программированию

echo "Учебник Пособие по языку. 0.3 Программные продукты и их основные характеристики 0.2 0.3.1. Понятия программного обеспечения Программирование – это сфера действий, направлен

Компьютерные вирусы и антивирусы

echo "Содержание Введение Кто и почему пишет вирусы? Компьютерные вирусы, их свойства и классификация Свойства компьютерных вирусов Классификация вирусов Загрузочные вирусы Файловые вирусы Загрузочно-

Хэш-функции в криптосистемах

echo "Иногда требуется сделать доступной для всех только часть документов. Например, зачастую требуется скрыть програмный код cgi-скрипта от посторонних глаз, но весьма нежелательно запрещать его исп

Билеты и ответы по Информатике за 11-й класс

echo "Каждый вариант определения информации обладает некоторой неполнотой. В широком смысле информация –это отражение реального (материального, предметного) мира, выражаемое в виде сигналов и знаков.

Программирование ориентированное на объекты

echo "Основная цель данного пособия заключается в том, чтобы донести до читателя в сжатой лаконичной фоpме основные концепции объектно-оpиентиpованного подхода, пpоиллюстpиpовать их и сфоpмиpовать общ

Информатика

echo "Обсуждаются pазличные опpеделения понятия 'инфоpмация', связанные с ним пpоблемы детеpминизма и случайности, философские аспекты экспеpиментальных исследований, восходящие к негэнтpопийному пpин

База данных "Домашняя библиотека"

echo "Поэтому, в данной курсовой работе рассмотрим работу с базами данных. Основные понятия баз данных 2.1 Базы данных и системы управления базами данных База данных – это организованная структура, п