Создайте предикат, удаляющий в исходном списке все повторные вхождения элементов - Prolog

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

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

Создайте предикат, удаляющий в исходном списке все повторные вхождения элементов.

Решение задачи: «Создайте предикат, удаляющий в исходном списке все повторные вхождения элементов»

textual
Листинг программы
domains
int=integer
intl=int*
 
predicates
mem(int,intl)
setof(intl,intl)
 
clauses
mem(_,[]) :- fail.
mem(X,[X|_]) :- !.
mem(X,[_|T]) :- mem(X,T).
 
setof([],[]).
setof([H|T],[H|R]) :- setof(T,R),not(mem(H,R)).
setof([H|T],R) :- setof(T,R),mem(H,R).

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


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

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

10   голосов , оценка 3.9 из 5
Похожие ответы