Функции на Swi Prolog
Формулировка задачи:
Здравствуйте, кто-нибудь знает как сделать эту функцию?
Опишите функцию, принимающую в качестве аргумента два списка и возвращающая true, если все элементы, входящие в оба списка, расположены в этих списках в одном и том же порядке.
Решение задачи: «Функции на Swi Prolog»
textual
Листинг программы
domains int=integer intl=int* predicates memb(int,intl) inters(intl,intl,intl) task(intl,intl) clauses memb(_,[]) :- fail. memb(X,[X|_]) :- !. memb(X,[Y|T]) :- X<>Y, memb(X,T). inters([],_,[]). inters([X|T],Y,[X|R]) :- memb(X,Y), inters(T,Y,R). inters([X|T],Y,R) :- not(memb(X,Y)), inters(T,Y,R). task(X,Y) :- inters(X,Y,R1), inters(Y,X,R2), R1=R2.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д