Постфикс списка на прологе - Prolog

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

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

доброго времени суток как получить постфикс списка?смог сделать только префикс:
Листинг программы
  1. prefix(_, []).
  2. prefix([T1|H1], [T1|H2]) :-prefix(H1, H2).
2)
Листинг программы
  1. postrix ([1,2,3],X)
  2. X=[[1,2,3],[2,3],[3]]
- это должен быть результат, но как не менял... в общем, ничего хорошего не выходит. а ещё, даже не знаю, как назвать эту функцию. получить все сегменты списка. как-то так должно выглядеть:
Листинг программы
  1. segms ([1,2,3],X)
  2. X=[[1,2,3],[1,2],[2,3],[1],[2],[3],[]]
здесь вообще даже не знаю, с чего начать подскажите, пожалуйста!

Решение задачи: «Постфикс списка на прологе»

textual
Листинг программы
  1. domains
  2. int=integer
  3. intl=int*
  4. intll=intl*
  5.  
  6. predicates
  7. post_fix(intl,intll)
  8. postfix(intl,intll)
  9.  
  10. clauses
  11. post_fix([X],[[X]]) :- !.
  12. post_fix([_|T],[T|Z]) :- post_fix(T,Z).
  13.  
  14. postfix(X,[X|Y]) :- post_fix(X,Y).

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


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

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

10   голосов , оценка 3.8 из 5

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

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

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