Функции на Swi Prolog

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, кто-нибудь знает как сделать эту функцию? Опишите функцию, принимающую в качестве аргумента два списка и возвращающая true, если все элементы, входящие в оба списка, расположены в этих списках в одном и том же порядке.

Решение задачи: «Функции на Swi Prolog»

textual
Листинг программы
  1. domains
  2. int=integer
  3. intl=int*
  4.  
  5. predicates
  6.  
  7. memb(int,intl)
  8. inters(intl,intl,intl)
  9. task(intl,intl)
  10.  
  11. clauses
  12.    
  13. memb(_,[]) :- fail.
  14. memb(X,[X|_]) :- !.
  15. memb(X,[Y|T]) :- X<>Y, memb(X,T).
  16.      
  17. inters([],_,[]).
  18. inters([X|T],Y,[X|R]) :- memb(X,Y), inters(T,Y,R).
  19. inters([X|T],Y,R) :- not(memb(X,Y)), inters(T,Y,R).    
  20.  
  21. task(X,Y) :- inters(X,Y,R1), inters(Y,X,R2), R1=R2.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.933 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут