Prolog – Prefix, Suffix – начало, край на списък


Начален (prefix) списък от елементи на списък – на Пролог

prefix([],L).
prefix([X|L1],[X|L2]):- prefix(L1,L2).
?- prefix([a,b,c,d,f],X).
%a,b,c,d,f
?- prefix([a,b,c],[a,b,c,d,f]).
%yes

Списък завършващ на друг списък (suffix)

suffix(L,L).
suffix(L1,[_|L2]):- suffix(L1,L2).
?- suffix([c,d,f],[a,b,c,d,f]).
%yes

Можете да проверите дали даден списък е начален или краен на някой.

sublist(L1,L2):-prefix(L3,L2),suffix(L1,L3).
  1. Няма коментари.
(will not be published)