Написать определение операций равенства, объединения, пересечения, разности множеств - Prolog

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

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

Написать определение операций равенства, объединения, пересечения, разности множеств. Помогите, пожалуйста.

Решение задачи: «Написать определение операций равенства, объединения, пересечения, разности множеств»

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

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


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

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

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

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

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

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