Implementierungsvorschlag
Implementierung der teiler-Funktion
Hier ein Vorschlag für die Implementierung der Funktion teiler
:
teiler : Int -> Int
teiler n =
let
istTeiler zahl =
modBy zahl n == 0
in
List.range 1 n
|> List.filter istTeiler
|> List.length
Aufgabe 1
Teste die Funktion teiler
in der REPL und erkläre, wie sie funktioniert.
Implementierung der ausgabe-Funktion
Für die Funktion ausgabe
wird folgender Vorschlag gemacht:
ausgabe : String -> String
ausgabe eingabe =
let
n = String.toInt eingabe
teilerAnzahl = teiler n
in
eingabe ++ " hat " ++ String.fromInt teilerAnzahl ++ " Teiler"
Aufgabe 2
Die Funktion ausgabe
lässt sich so nicht ausführen.
Analysiere den Code und stelle Vermutungen auf,
an welcher Stelle ein Problem auftreten könnte.