/* * Opgaver til Prolog fra ugeseddel 10/11 */ /* Opgave på ugeseddel * * Lav et program, der tæller hvor mange gange et prædikat * kan opfyldes * * Kan fx. bruges som: * * count(member(E,[1,2,3,4,5]), N). * * Dette giver svaret: N = 5. */ count(_, _) :- asserta(blob(0)), fail. count(P, _) :- call(P), retract(blob(N)), N1 is N + 1, asserta(blob(N1)), fail. count(_, N) :- blob(N), retract(blob(_)).