Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- % Copyright
- %1
- %implement main
- % open core, console
- %
- %class predicates
- %
- % пересечение : (integer*, integer*, integer* [out]).
- % входит : (integer, integer*) nondeterm.
- %
- %clauses
- % пересечение([], _, []) :-
- % !.
- % пересечение([Elem | A], B, [Elem | Res]) :-
- % входит(Elem, B),
- % !,
- % пересечение(A, B, Res).
- % пересечение([_ | A], B, Res) :-
- % !,
- % пересечение(A, B, Res).
- % входит(Elem1, [Elem1 | _]).
- %
- % входит(Elem1, [_ | List]) :-
- % входит(Elem1, List).
- % run() :-
- % пересечение([1, 2, 3, 4, 5], [3, 4, 5, 6, 7], Res),
- % write(Res),
- % _ = readChar().
- %
- %end implement main
- %
- %goal
- % console::runUtf8(main::run).
- % 2
- %implement main
- % open core, console
- %
- %class predicates
- %
- %объединение : (integer*, integer*, integer*[out]).
- %не_входит : (integer, integer*) nondeterm.
- %
- %clauses
- %объединение([],B,B).
- %объединение([Elem|A],B, Res) :- не_входит(Elem, B),!, объединение(A,[Elem|B],Res).
- %объединение([_|A], B,Res) :- !, объединение(A,B,Res).
- %
- %не_входит(_,[]).
- %не_входит(Elem, [Elem2|List]) :- Elem <> Elem2, !, не_входит(Elem, List).
- %
- % run() :-
- % объединение([1,2,3,4,5], [3,4,5,6,7], Res), write(Res), _=readChar().
- %end implement main
- %
- %goal
- % console::runUtf8(main::run).
- % 3
- %implement main
- % open core, console
- %
- %class predicates
- %
- %разность : (integer*, integer*, integer*[out]).
- %не_входит : (integer, integer*) nondeterm.
- %
- %clauses
- %разность([],_,[]).
- %разность([Elem|A],B,[Elem|Res]) :- не_входит(Elem, B), !, разность(A, B, Res).
- %разность([_|A], B, Res) :- !, разность(A,B,Res).
- %
- %не_входит(_,[]).
- %не_входит(Elem, [Elem2|List]) :- Elem <> Elem2, !, не_входит(Elem, List).
- %
- % run() :-
- % разность([1,2,3,4,5], [3,4,5,6,7], Res), write(Res), _=readChar().
- %end implement main
- %
- %goal
- % console::runUtf8(main::run).
- %4
- implement main
- open core, console
- class predicates
- union : (integer*, integer*, integer *[out]).
- clauses
- union([],B,B).
- union([Elem|A], B, Res) :- !, union(A, [Elem|B], Res).
- run() :- union([1,2,3],[4,5,6],Res), write(Res), _=readChar().
- end implement main
- goal
- console::runUtf8(main::run).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement