линейное_подчинение(гр_долж("","Начальник финансовго отдела"),гр_долж("","Заместитель начальника финансового отдела")).
функциональное_подчинение(гр_долж("Группа учёта материальных ценностей", "Помощник начальника финансого отдела"),гр_долж("Группа учёта материальных ценностей",Y)):Y="Ведущий бухгалтер" or Y="Бухгалтер",!.
функциональное_подчинение(гр_долж("Группа учёта расчётов с личным составом", "Помощник начальника финансого отдела"),гр_долж("Группа учёта расчётов с личным составом",Y)):Y="Ведущий бухгалтер" or Y="Бухгалтер",!.
функциональное_подчинение(гр_долж("Финансовая группа", "Помощник начальника финансого отдела"),гр_долж("Финансовая группа",Y)):Y="Ведущий бухгалтер" or Y="Бухгалтер",!.
функциональное_подчинение(гр_долж("Группа учёта материальных ценностей", "Ведущий бухгалтер"),гр_долж("Группа учёта материальных ценностей",Y)):Y="Бухгалтер",!.
функциональное_подчинение(гр_долж("Группа учёта расчётов с личным составом", "Ведущий бухгалтер"),гр_долж("Группа учёта расчётов с личным составом",Y)):Y="Бухгалтер",!.
функциональное_подчинение(гр_долж("Финансовая группа", "Ведущий бухгалтер"),гр_долж("Финансовая группа",Y)):Y="Бухгалтер". функциональное_подчинение(гр_долж("Финансовая группа", "Ведущий бухгалтер"),гр_долж("Группа учёта материальных ценностей","Ведущий бухгалтер")). функциональное_подчинение(гр_долж("Финансовая группа", "Ведущий бухгалтер"),гр_долж("Группа учёта расчётов с личным составом","Ведущий бухгалтер")). функциональное_подчинение(гр_долж("Финансовая группа", "Ведущий бухгалтер"),гр_долж("Касса", "Бухгалтер по кассовым операциям")).
GOAL
функциональное_подчинение(гр_долж("Финансовая группа", "Ведущий бухгалтер"),гр_долж(X,Y)) and сотрудник(V,_,гр_долж(X,Y),_).
Результаты работы программы
К программному продукту можно задать много вопросов. Допустим, необходимо знать, кто функционально подчиняется ведущему бухгалтеру финансовой группы.
Цель:
функциональное_подчинение(гр_долж("Финансовая группа", "Ведущий бухгалтер"),гр_долж(X,Y)) and сотрудник(V,_,гр_долж(X,Y),_).
Результат:
Рис. 3. Результат работы программы.
Вывод: в процессе выполнения лабораторной работы я познакомилась с языком программирования Пролог, со структурой программы, научилась создавать структуру подразделения.
Лабораторная работа №2
Тема: Структуры
Цель: изучить структурные объекты, их представление на языке Пролог, изображение в виде деревьев.
Задание №1
Работа с базой знаний «треугольники». Программа должна включать следующие определения: треугольник, прямоугольный, тупоугольный, остроугольный, равнобедренный, правильный.
На рисунке 4 изображена структура базы знаний «Треугольник».
Рис. 4. База знаний «Треугольник»
Код программы
DOMAINS
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.