04.07.01. all_members – Anfragen und mehr

Für die Definition des Prädikates kann member/2 verwendet werden.

Schreibe ein Prädikat all_members/2, das zwei Listen L1 und L2 nimmt und gelingt, wenn alle Elemente von L1 auch Element von L2 sind. L1 ist das erste und L2 das zweite Argument von all_members/2.

?- all_members([a,c],[a,b,c,d]).
true.
?- all_members([a,e],[a,b,c,d]).
false.
?- all_members(a,[a,b,c,d]).
false.

Wenn du fertig bist mit den Aufgaben, klicke auf ‚Programmieren‘, um das Prädikat zu schreiben.

L1 und L2 sind Listen. Wann ist all_members(L1,L2) true?

Darf all_members(L1,L2) true sein, wenn L1 das selbe Element mehrfach enthält, so wie [a,b,a] das Element a mehrfach enthält?

Darf all_members(L1,L2) true sein, wenn L2 das selbe Element mehrfach enthält, so wie [a,b,a] das Element a mehrfach enthält?

Welche Liste(n) sollte man bei einer klassischen rekursiven Implementierung von all_members abbauen, sodass sie in der Stoppklausel leer sind?

Wie lautet die Antwort auf die folgende Anfrage? all_members([a,b],[]).

Was ist die Antwort auf die folgende Anfrage? all_members([],[a,b]).

Was ist die Antwort auf die folgende Anfrage? all_members([a,b,c,a],[a,b,c,d,e,f,g]).

Noch keine Kommentare eingereicht. Bitte hilf uns diese Aufgabe zu verbessern.

Schreibe einen Kommentar