Написать программу со списками - Prolog
Формулировка задачи:
Написать программу для сортировки списка методом селекции: из списка выбирается максимальный элемент и переносится в голову результирующего списка, изначально пустого. Процесс повторяется, пока не будут перенесены все элементы списка.
Решение задачи: «Написать программу со списками»
textual
Листинг программы
domains int=integer intl=int* predicates max_el(int,intl) del_el(int,intl,intl) vsort(intl,intl) clauses max_el(N,[N]). max_el(N,[P|T]) :- max_el(N,T), N>P. max_el(P,[P|T]) :- max_el(N,T), N<=P. del_el(_,[],[]). del_el(N,[N|T],T). del_el(N,[M|T],[M|Q]):- M<>N,del_el(N,T,Q). vsort([],[]). vsort(X,[Z|Y]) :- max_el(Z,X), del_el(Z,X,W) , vsort(W,Y).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д