.
. , [H,T|TS] H \= T, [H], [T|TS].
- :
pack([H, H|HS], Ergebnis):-
pack([H|HS], Ergebnis1),
append([H|HS], Ergebnis1, Ergebnis).
, [H,H|HS] [H|HS], [H|HS]. . , [H|HS], , : [[H,...,H]|X], H . , :
pack([H, H|HS], Ergebnis):-
pack([H|HS], [HH|T]),
Ergebnis = [[H|HH]|T].
:
pack([], []).
pack([X], [[X]]).
pack([H,T|TS], [[H]|PTS]):-
H \= T,
pack([T|TS], PTS).
pack([H, H|HS], [[H|HH]|T]):-
pack([H|HS], [HH|T]).
...
| ?- pack([a,a,a,a,b,c,c,a,a,d,e,e,e,e],X).
X = [[a,a,a,a],[b],[c,c],[a,a],[d],[e,e,e,e]] ? a
no
| ?-