Exerciții Laboratorul 2, Exercițiul 4

elements_of/2 — apartenență la listă

Laboratorul 2, Exercițiul 4 intro Recursivitate pe liste

Scrieți un predicat elements_of/2 care verifică dacă primul argument este element al listei din cel de-al doilea argument.

Exemple de apel și rezultatele așteptate:

?- elements_of(1, [1,2,3]).
true

?- elements_of(b, [a,b,c]).
true

?- elements_of(d, [a,b,c]).
false

?- elements_of(X, [a,b,c]).
X = a ;
X = b ;
X = c ;
false

Hint: folosește pattern-ul [H | T] pentru a descompune lista. Cazul de bază: H este chiar elementul căutat. Cazul recursiv: caută în T.

Te-ai blocat?
editor soluție
?-
Tastează o interogare (ex. father_of(sandra, X).) și apasă Enter — sau apasă pe un caz de test de mai jos.
Cazuri de test (3 — apasă pe unul ca să îl rulezi, sau Verifică pentru toate)
?
elements_of(1, [1,2,3]). așteptat: true
?
elements_of(b, [a,b,c]). așteptat: true
?
elements_of(d, [a,b,c]). așteptat: false