Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

eml / lol

.pl
Скачиваний:
8
Добавлен:
21.03.2016
Размер:
716 б
Скачать
first(alina,36).
first(lena, 51).
first(nastya,5).
first(anya,88).

qsort([], []).
qsort([H|Tail], S) :- split(H, Tail, Small, Big),
qsort(Small, Small1),
qsort(Big, Big1),
append(Small1, [H|Big1], S).

order(X, Y) :- X =< Y.
split(H, [A|Tail], [A|Small], Big) :- order(A, H), !,
split(H, Tail, Small, Big).
split(H, [A|Tail], Small, [A|Big]) :- split(H, Tail, Small, Big).
split(_, [], [], []).

vozrup(L1):- findall((Y),first(_,Y),L),qsort(L,L1),write(L1),!.

vozrdw(L3):- findall((Y),first(_,Y),L),qsort(L,L2),reverse(L2,L3),write(L3),!.

sopost([],[]):- !.
sopost(L,M):- L = [H|T],first(X,H),sopost(T,M2),M = [X|M2],!.

pr(M):- vozrup(L),sopost(L,M).
pr2:- pr(M),reverse(M,L),write(L).
Соседние файлы в папке eml