i

Übungen

Aufgabe 1

Der folgende REPL-Dialog verdeutlicht das Verhalten der vordefinierten Funktionen List.minimum und List.maximum.

> List.minimum [6,4,12,5] 
Just 4 : Maybe number
> List.maximum [6,4,12,5]
Just 12 : Maybe number

Warum liefern die beiden Funktionen Daten vom Typ Maybe number? Für welche Liste wird wohl der Datenwert Nothing zurückgegeben?

Aufgabe 2

Der folgende REPL-Dialog verdeutlicht das Verhalten einer Funktionen elementAnPos.

> elementAnPos
<function> : Int -> List a -> Maybe a
> elementAnPos 1 ['a','b','c','d']
Just 'a' : Maybe Char
> elementAnPos 2 ['a','b','c','d']
Just 'b' : Maybe Char
> elementAnPos 3 ['a','b','c','d']
Just 'c' : Maybe Char
> elementAnPos 4 ['a','b','c','d']
Just 'd' : Maybe Char
> elementAnPos 5 ['a','b','c','d']
Nothing : Maybe Char
> elementAnPos 0 ['a','b','c','d']
Nothing : Maybe Char
> elementAnPos -2 ['a','b','c','d']
Nothing : Maybe Char
> 

Entwickle eine Funktionsdefinition. Man kann dabei so vorgehen:

elementAnPos 3 ['a','b','c','d']: 
List.drop 2 ['a','b','c','d'] -> ['c','d']
List.take 1 ['c','d'] -> ['c']
List.head ['c'] -> Just 'c'

Suche

v
110.2.14.2
inf-schule.de/fp_elm_alteversion/elm_programme/fehlerbehandlung/uebungen
inf-schule.de/110.2.14.2
inf-schule.de/@/page/P6LUxxpHkiKszTQm

Rückmeldung geben