Написать программу со списками - 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).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д