Prolog – Брой на кратни елементи в списък, сума на по-малки елементи в списък


Дефиниция на ПРОЛОГ на предикат p(X,L,N), който по даден списък от естествени числа L и естествено число X връща в числото N:

броят на тези елементи на L, които са кратни на X

p(X,[],0).
p(X,[Y|L],N):-Y mod X =:= 0, p(X,L,N1), N is N1+1.
p(X,[Y|L],N):-Y mod X > 0, p(X,L,N).
%?-p(4,[1,4,6,16,9,4],X),write(X),nl.
сумата на тези елементи на L, които са <= X
p(X,[],0).
p(X,[Y|L],N):-Y =< X, p(X,L,N1), N is N1+Y.
p(X,[Y|L],N):-Y > X, p(X,L,N).
?-p(12,[1,4,6,16,9,4],X),write(X),nl.
  1. Няма коментари.
(will not be published)