Вывести сколько раз встречается в списке каждый элемент - Prolog

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

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

Вывести сколько раз встречается в списке каждый элемент, помогите срочно нужно, в prologе не шарю совсем, а на форуме ничего не нашел)))

Решение задачи: «Вывести сколько раз встречается в списке каждый элемент»

textual
Листинг программы
  1. domains
  2.  
  3. int=integer
  4. intl=int*
  5. intll=intl*
  6.  
  7. predicates
  8.  
  9. delall(int,intl,intl)
  10. count(int,intl,int)
  11. task(intl,intll)
  12.  
  13. clauses
  14.  
  15. delall(_,[],[]).
  16. delall(X,[X|T],Q) :- delall(X,T,Q).
  17. delall(X,[Y|T],[Y|Q]) :- Y<>X, delall(X,T,Q).
  18.  
  19. count(_,[],0).
  20. count(X,[X|T],N) :- count(X,T,N1), N=N1+1.
  21. count(X,[Y|T],N) :- X<>Y, count(X,T,N).
  22.  
  23. task([],[]).
  24. task([X|T],[[X,Y]|R]) :- count(X,T,N), Y=N+1,  delall(X,T,TT), task(TT,R).
  25.  
  26.  
  27. task([1,2,3,1,1,6,6,7,2],Z)
  28. Z=[[1,3],[2,2],[3,1],[6,2],[7,1]]

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


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

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

7   голосов , оценка 3.857 из 5

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

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

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