Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- % This buffer is for notes you don't want to save.
- % If you want to create a file, visit that file with C-x C-f,
- % then enter the text in that file's own buffer.
- % Example #2
- concatenating([],List,List).
- concatenating([Head|Tail],List,[Head|ResultedTail]) :-
- concatenating(Tail,List,ResultedTail).
- %1
- inserting(Item, List, [Item|List]).
- inserting(Item, [Head|Tail], [Head|Result]) :-
- inserting(Item, Tail, Result).
- %2
- deleting_one(Item, [Item|Tail], Tail).
- deleting_one(Item, [Head|Tail], [Head|Result]) :-
- deleting_one(Item, Tail, Result).
- %3
- deleting_all(Item, [Item], []).
- deleting_all(Item, [Item|Tail], Result) :-
- deleting_all(Item, Tail, Result).
- deleting_all(Item, [Head|Tail], [Head|Result]) :-
- not(Head = Item), deleting_all(Item, Tail, Result).
- %4
- range(X, X, [X]) :- !.
- range(X, Y, Result) :-
- X =< Y, X1 is X + 1, range(X1, Y, RangeX1), append([X], RangeX1, Result).
- %5
- get_last([SingleElement], SingleElement) :- !.
- get_last([_|Tail], Result) :-
- get_last(Tail, Result).
- get_remaining_list([_], []) :- !.
- get_remaining_list([Head|Tail], [Head|Result]) :-
- get_remaining_list(Tail, Result).
- rotate(List, 0, List) :- !.
- rotate([Head|Tail], Times, Result) :-
- Times > 0, get_last([Head|Tail], Last), get_remaining_list([Head|Tail], Remain), Times1 is Times - 1, rotate([Last|Remain], Times1, Result).
- %6
- flatten_list([],[]).
- flatten_list([Item|List], Result) :-
- not(is_list(Item)),flatten_list(List,Result1),append([Item],Result1,Result).
- flatten_list([Head|Tail], Result) :-
- flatten_list(Head, FlatHead), flatten_list(Tail, FlatTail), append(FlatHead, FlatTail, Result).
- %7
- inverting([], []) :- !.
- inverting([Head|Tail], Result) :-
- inverting(Tail, TailInvert), append(TailInvert, [Head], Result).
- %8
- duplicate([], []):- !.
- duplicate([Head|Tail], Result) :-
- duplicate(Tail, TailDuplicate), append([[Head, Head]], TailDuplicate, Result).
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement