<div class="notebook"> <div class="nb-cell markdown" name="md1"> ## 06.06. deleteall/3 Schreibe ein Prädikat deleteall/3, das alle Vorkommen eines Elements aus einer Liste löscht: `` ?- deleteall(b,[a,b,c,d],[a,c,d]). true. ?- deleteall(1,[1,2,1,2,3,1,2,3,4],[2,2,3,2,3,4]). true. ?- deleteall(1,[a,b,c],[a,b,c]). true. ?- deleteall(1,[1,1,1,1],[]). true. `` </div> <div class="nb-cell program" data-background="true" name="p1"> % deleteall/3 % deleteall(X,L1,L2) ist wahr, wenn L2 die Liste ist, die man erhält, % wenn man aus L1 alle Vorkommen von X löscht. mydelete(...):- ... </div> <div class="nb-cell query" name="q1"> deleteall(1,[1,2,1,2,3,1,2,3,4],[2,2,3,2,3,4]). </div> <div class="nb-cell query" name="q2"> deleteall(1,[a,b,c],[a,b,c]). </div> <div class="nb-cell query" name="q3"> deleteall(a,[a,a,a],[]). </div> <div class="nb-cell markdown" name="md2"> Wie verhält sich das Prädikat, wenn man es mit Variablen an den verschiedenen Argumentpositionen aufruft? </div> </div>