Поиск уникальных предметов в списке
Я пытаюсь написать правило, которое решает, является ли элементX
встречается ровно один в спискеL
.
unique(X, [X|T]):- !, \+ member(X, T).
unique(X, [_|T]):- unique(X, T).
Правило работает для определения того, является ли значение уникальным в списке или ни, но когда я пытаюсь получить уникальные значения в списке, используяunique(X, [1,2,3,1,3,2,5,4,3,8]).
это просто возвращаетfalse.
Что я ожидал, это (какmember(X, list).
:
X = 5 ;
X = 4 ;
X = 8 ;
Я полный новичок, и я не знаю, что я делаю неправильно.