haskell-workshop/exercises/block1/2-bob
Jonathan Seltmann a8059625df changing compile commands to 'runhaskell' command 2025-02-04 14:31:32 +01:00
..
README.md changing compile commands to 'runhaskell' command 2025-02-04 14:31:32 +01:00
bob.hs adding optional exercise darts 2025-01-29 14:27:35 +01:00
example-input block 1 exercises 2025-01-29 11:03:04 +01:00
example-output adding optional exercise darts 2025-01-29 14:27:35 +01:00

README.md

Übungsaufgabe 2: Bob

Einführung

Bob ist ein träger und fauler Teenager. Er hält sich für sehr cool. Und er zeigt definitiv keine Begeisterung das wäre uncool.

Wenn Leute mit ihm sprechen, sind seine Antworten ziemlich begrenzt.

Anweisungen

Deine Aufgabe ist es, zu bestimmen, was Bob jemandem antwortet, wenn man ihn etwas fragt oder ihm etwas sagt.

Bob gibt nur eine von fünf möglichen Antworten:

  • "Klar." Das ist seine Antwort, wenn man ihm eine Frage stellt, z. B. „Wie geht es dir?“. Fragen erkennt man daran, dass sie mit einem Fragezeichen enden.
  • "Whoa, entspann dich!" Das sagt er, wenn man IHN ANSCHREIT. Schreien erkennt man daran, dass ALLE BUCHSTABEN GROßGESCHRIEBEN SIND.
  • "Chill mal, ich bin da schon dran!" So antwortet er, wenn man ihn anschreit und gleichzeitig eine Frage stellt.
  • "Na gut. Dann eben nicht!" Das ist seine Reaktion auf Stille. Stille bedeutet, dass nichts gesagt wird oder nur Leerzeichen vorhanden sind.
  • "Whatever." Das ist seine Antwort auf alles andere.

Du musst die Funktion responseFor implementieren, die Bobs Antwort für eine gegebene Eingabe zurückgibt. Falls du unsicher bist, kannst du die bereitgestellte Signatur verwenden, aber lass dich nicht in deiner Kreativität einschränken:

responseFor :: String -> String

Hinweis 1: Zur Lösung dieser Aufgabe können unter anderem die bereits behandelten Guards helfen.

Hinweis 2: Das Standard-Lib-Package Data.Char kann zur Lösung der Aufgabe hilfreich sein.

Ausführen und Testen

Um die Funktion zu testen, kannst du durch die folgenden Commands in diesem Ordner auf der Kommandozeile das Programm compilen und ausführen:

>runhaskell bob.hs bzw

>runhaskell exercises/block1/2-bob/bob.hs