Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Подборка лаб выполненых в Arity Prologе / ARI / ARITY / LAB2 / LAB2
.TXT{џў«пҐвбп «Ё н«Ґ¬Ґв Z н«Ґ¬Ґв®¬ бЇЁбЄ }
member(Z,[Z|_]).
member(Z,[_|X]):-member(Z,X).
{„®Ў ўЁвм н«Ґ¬Ґв Z ў з «® бЇЁбЄ X}
append(Z,X,[Z|X]).
{„®Ў ўЁвм н«Ґ¬Ґв Z ў Є®Ґж бЇЁбЄ }
appendlast(Z,[],[Z]).
appendlast(Z,[A|X],[A|R]):-appendlast(Z,X,R).
{€ўҐабЁп бЇЁбЄ }
reverse([],[]).
reverse([A|X],R):-reverse(X,Y),appendlast(A,Y,R).
{‘а ўҐЁҐ бЇЁбЄ®ў}
compare([],[]).
compare([A|X],[B|Y]):-A=B,compare(X,Y).
{‘®ўЇ ¤ҐЁҐ ЇҐаўле н«Ґ¬Ґв®ў}
prefix([],X).
prefix([A|X],[B|Y]):-A=B,prefix(X,Y).
{‘®ўЇ ¤ҐЁҐ Ї®б«Ґ¤Ёе н«Ґ¬Ґв®ў}
suffix([],X).
suffix(X,Y):-reverse(X,X1),reverse(Y,Y1)
,prefix(X1,Y1).
{Ќ 室пвбп «Ё ¤ў н«Ґ¬Ґв A Ё B ў бЇЁбЄҐ X а冷¬?}
near(A,B,X):-prefix([A,B],X).
near(A,B,X):-prefix([B,A],X).
near(A,B,[_|X]):-near(A,B,X).
{‚лЎ®аЄ н«Ґ¬Ґв Ђ Ё§ бЇЁбЄ [_|_],X-®бв в®Є}
select(A,[A|X],X).
select(A,[B|X],[B|R]):-select(A,X,R).
{‘а ўҐЁҐ ЁҐа аеЁзҐбЄЁе бЇЁбЄ®ў}
comparetree([],[]).
comparetree(X,Y):-atom(X),atom(Y),X=Y.
comparetree([A|X],[B|Y]):-comparetree(A,B),comparetree(X,Y).
{ЋЎе®¤л ¤ҐаҐўмҐў}
{Љ‹Џ}
ctree([]).
ctree(X):-atom(X),write(X),nl.
ctree([Rt,L,R]):-ctree(Rt),ctree(L),ctree(R).
{‹ЉЏ}
ltree([]).
ltree(X):-atom(X),write(X),nl.
ltree([Rt,L,R]):-ltree(L),ltree(Rt),ltree(R).
{Џ‹Љ}
rtree([]).
rtree(X):-atom(X),write(X),nl.
rtree([Rt,L,R]):-rtree(R),rtree(L),rtree(Rt).
? - member(a,[c,v,b,a,d,f]).
yes
? - append(a,[z,x,c,v,b,n],L).
L=[a,z,x,c,v,b,n]->;
no
? - appendlast(a,[d,f,g,h,j,k],M).
M=[d,f,g,h,j,k,a]->;
no
? - reverse([z,x,c,v,b],K).
K=[b,v,c,x,z]->;
no
? - near(a,j,[d,f,g,a,j,r,t]).
yes
? - select(s,[g,h,j,k,s,f,r],L).
L=[g,h,j,k,f,r]->;
no
? - prefix([a,s,d,f],[a,s,d,f,g,h,j]).
yes
? - suffix([a,w,s,e,d],[k,j,h,a,w,s,e,r,d]).
no
? - ctree([a,s,d]).
a
s
d
yes
? - ltree([a,s,d]).
s
a
d
yes
? - rtree([a,s,d]).
d
s
a
yes