Нахождение множества пересечения трех множеств / Prolog
Формулировка задачи:
Добрый день! Не получается создать множество пересечения трех множеств. Подскажите пожалуйста что не так? Заранее благодарен!
Листинг программы
- DOMAINS
- list=integer*
- PREDICATES
- member(integer,list,list)
- intersect(list,list,list,list)
- clauses
- intersect([],_,_,[]).
- intersect([H|T1],S2,S3,[H|T4]):-
- member(H,S2,S2),member(H,S3,S3),!,
- intersect(T1,S2,S3,T4).
- intersect([_|T1],S2,S3,T4):-
- intersect(T1,S2,S3,T4).
- member(H,[H|Tail],Tail):-!.
- member(H,[H1|T],[H1|T]):-
- member(H,T,T).
- GOAL
- write("Pervoe mnozhestvo: "),nl, readterm(list,L),
- write("Vtoroe mnozhestvo: "),nl, readterm(list,M),
- write("Tret'e mnozhestvo3: "),nl,readterm(list,K),
- intersect(L,M,K,Print),
- write("Peresechenie mnozhestv"),nl,
- write(Print).
Решение задачи: «Нахождение множества пересечения трех множеств / Prolog»
textual
Листинг программы
- member(H,S2,_),member(H,S3,_),!,
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д