TU Wien:Funktionale Programmierung VU (Knoop)/Prüfung 2022-03-04 (Lösungsvorschlag)/Prüfung 2023-01-19 (Lösungsvorschlag)
Zur Navigation springen
Zur Suche springen
Für die Aufgabenstellungen, siehe [1]
Aufgabe 1 (2*0.5+10+14 = 15 Punkte)[Bearbeiten | Quelltext bearbeiten]
1.1:
a) E 7 (E 9 (E 9 Ende))
b) E "Viel" (E "Er" (E "Folg" (E "!" Ende)))
1.2:
streiche :: Ord a => (Liste a) -> (Liste a) -> (Liste a)
streiche Ende _ = Ende
streiche (E x xs) ys = if x `myelem` ys
then streiche xs ys else E x (streiche xs ys)
myelem :: Ord a => a -> (Liste a) -> Bool
myelem _ Ende = False
myelem x (E y ys) = if x == y then True else myelem x ys
1.3:
streiche prüft mittels der funktion myelem, welche elemente aus der ersten Liste nicht in der Zweiten vorkommen und springt mittels rekusrion von Element zu Element.