timoninas / logic-programming

Logic programming 6 semester in bmstu

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Language GitHub license

Логическое программирование; МГТУ; 6 семестр 🤙

Лабораторные работы по Prolog

🔢 Описание Код Отчет ℹ️
1️⃣ Разобраться со средой Visual Prolog Код Отчет
2️⃣ Создать базу знаний студентов с помощью фактов, правил Код Отчет
3️⃣ Создать базу знаний: записи, владельцы машин, счета в банке Код Отчет
4️⃣ Использование конъюнктивного правила и простого вопроса Код Отчет
5️⃣ Создание и использование вариативных типов данных Код Отчет
6️⃣ Использование правил в программе на Prolog Код Отчет
7️⃣ Формирование эффективных программ на Prolog Код Отчет
8️⃣ Рекурсия на Prolog Код Отчет
9️⃣ Обработка списков на Prolog Код Отчет
0️⃣ Формирование и модификация списков на Prolog Код Отчет

Обучение

p(X) :- r(X). значит: предикат p(X) будет успешен, если успешен предикат r(X)


q(7). q(3). q(2).
r(8). r(5).
пара(X,Y) :- q(X), r(Y), X+Y>10, write(X,Y), nl, fail; succeed.

Перебор значений в множестве Q = {7, 3, 2} и R = {8, 5}. Когда найдется значение X+Y>10, тогда пара выведется на экран, перейдет на новую строку, а предикат fail откатывает назад - к предикату r(Y)

Предикат - succeed всегда успешен, поэтому в случае неуспеха в поиске пар чисел больше десяти, поиск пар не прервется, а сработает succeed


About

Logic programming 6 semester in bmstu

License:MIT License


Languages

Language:Prolog 100.0%