Da am Dienstag keine Vorlesungen stattfinden, fällt die Übungsstunde am 6.6.06 aus. Sie sollten aber doch etwas üben. Hier haben Sie ein paar Aufgaben zum Selberlösen: Aufgabe 1; a) Schreibe ein Prädikat praefix(+Liste1,+Liste2), das testet,ob Liste1 ein Anfangsstück von Liste2 ist. b) Schreibe ein Prädikat suffix(+Liste1,+Liste2), das testet,ob Liste1 ein Endstückstück von Liste2 ist. c) Schreibe ein Prädikat infix(+Liste1,+Liste2), das testet, ob Liste1 ein Mittelstück von Liste2 ist. Es sollte also z.B. gelten: suffix([a,b,c,d,e],[c,d,e]), praefix([a,b],[a,b,c,d,e]), infix([c,d],[a,b,c,d,e]). d) Schreibe ein Prädikat suffixe(+Liste, -Liste aller Suffixe der Eingabeliste), das zu einer Liste L eine Liste aller Suffixe von L ausgibt. Aufgabe 2: a) Schreiben Sie ein Prädikat merge(+Liste1,+Liste2,-Liste), die zu Eingabeliste Liste1 = [a1,a2,a3,...] und Liste2 = [b1,b2,...] die Liste ausgibt, in der die Elemente abwechselnd vorkommen, also Liste = [a1,b1,a2,b2,a3,...}. Wenn eine der Eingabelisten leer ist, soll das Ergebnis die andere Liste sein. b) Schreiben sie das "umgekehrte" Prädikat zerlege(+Liste,-Liste1,-Liste2), das eine Liste = [a1,b1,a2,b2,...] in die Liste1 = [a1,a2,...] der Elemente der Eingabe an ungeraden Stellen und die Liste2 = [b1,b2,..] der Elemente an geraden Stellen ausgibt. Viel Vergnügen!