Предикат нахождения множества - пересечения трех множеств - Prolog
Формулировка задачи:
Пожалуйста, помогите создать предикат нахождения множества пересечения трех множеств.
Решение задачи: «Предикат нахождения множества - пересечения трех множеств»
textual
Листинг программы
- implement main
- open core
- class predicates
- member: (integer,integer*) nondeterm.
- clauses
- member(_,[]) :- fail.
- member(H,[H|_]).
- member(H,[_|T]) :- member(H,T).
- class predicates
- intersect: (integer*, integer*, integer*) nondeterm (i,i,o).
- clauses
- intersect([],_,[]).
- intersect(_,[],[]).
- intersect([H|T1],T2,[H|T3]) :- intersect(T1,T2,T3),member(H,T2).
- intersect([H|T1],T2,T3) :- intersect(T1,T2,T3), not(member(H,T2)).
- class predicates
- inters3: (integer*, integer*, integer*,integer*) nondeterm (i,i,i,o).
- clauses
- inters3(A,B,C,R) :- intersect(A,B,AB), intersect(C,AB,R).
- clauses
- run():-
- console::init(),
- inters3([1,2,3,4],[3,4,5,6],[3,4,7,9],R).
- end implement main
- goal
- mainExe::run(main::run).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д