Написать программу со списками - Prolog

Узнай цену своей работы

Формулировка задачи:

Написать программу для сортировки списка методом селекции: из списка выбирается максимальный элемент и переносится в голову результирующего списка, изначально пустого. Процесс повторяется, пока не будут перенесены все элементы списка.

Решение задачи: «Написать программу со списками»

textual
Листинг программы
  1. domains
  2. int=integer
  3. intl=int*
  4.  
  5. predicates
  6. max_el(int,intl)
  7. del_el(int,intl,intl)
  8. vsort(intl,intl)
  9.  
  10. clauses
  11. max_el(N,[N]).
  12. max_el(N,[P|T]) :- max_el(N,T), N>P.
  13. max_el(P,[P|T]) :- max_el(N,T), N<=P.
  14.  
  15. del_el(_,[],[]).
  16. del_el(N,[N|T],T).
  17. del_el(N,[M|T],[M|Q]):- M<>N,del_el(N,T,Q).
  18.  
  19. vsort([],[]).
  20. vsort(X,[Z|Y]) :- max_el(Z,X), del_el(Z,X,W) , vsort(W,Y).

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы