Tracks
/
Elm
Elm
/
Übungen
/
Tracks on Tracks on Tracks
Tracks on Tracks on Tracks

Tracks on Tracks on Tracks

Lernübung

Einführung

Listen

Eine List in Elm ist eine unveränderliche Sammlung von null oder mehr Werten desselben Typs.

Listen kannst du so definieren:

empty = []
singleValue = [ 5 ]
threeValues = [ "a", "b", "c" ]

Am häufigsten fügst du einer Liste ein Element mit dem ::-Operator (cons) hinzu:

twoToFour = [ 2, 3, 4 ]
oneToFour = 1 :: twoToFour --> [ 1, 2, 3, 4 ]

Listen werden mit Funktionen und Operatoren aus dem List-Modul bearbeitet oder mit Pattern Matching.

describe : List String -> String
describe list =
    case list of
        [] ->
            "Empty list"

        [ "hello" ] ->
            "Singleton list with: hello"

        x :: xs ->
            "Non-empty list with head: " ++ x

describe []                   --> "Empty list"
describe [ "hello" ]          --> "Singleton list with: hello"
describe [ "hello", "world" ] --> "Non-empty list with head: hello"

Anleitung

In dieser Übung schreibst du Code, um eine Liste von Programmiersprachen im Blick zu behalten, die du auf Exercism lernen möchtest. Du hast sechs Aufgaben, bei denen es immer um Listen geht.

1. Eine neue Liste erstellen

Um die Sprachen im Blick zu behalten, die du lernen möchtest, brauchst du eine neue Liste. Definiere die Konstante newList, die eine neue, leere Liste enthält.

newList
    --> []

2. Eine vorhandene Liste definieren

Momentan hast du einen Zettel, auf dem die Sprachen stehen, die du lernen möchtest: Elm, Clojure und Haskell. Definiere die Konstante existingList, die diese Liste repräsentiert.

existingList
    --> [ "Elm", "Clojure", "Haskell" ]

3. Eine neue Sprache zu einer Liste hinzufügen

Wenn du Exercism erkundest und weitere interessante Sprachen findest, möchtest du sie deiner Liste hinzufügen. Implementiere die Funktion addLanguage, um eine neue Sprache an den Anfang deiner Liste hinzuzufügen.

addLanguage "TypeScript" [ "JavaScript", "CoffeeScript" ]
    --> [ "TypeScript", "JavaScript", "CoffeeScript" ]

4. Die Sprachen in der Liste zählen

Es ist unpraktisch, die Sprachen manuell zu zählen. Implementiere die Funktion countLanguages, um die Anzahl der Sprachen in deiner Liste zu zählen.

countLanguages [ "C#", "Racket", "Rust", "Ruby" ]
    --> 4

5. Die Liste umkehren

Irgendwann stellst du fest, dass deine Liste tatsächlich rückwärts angeordnet ist! Implementiere die Funktion reverseList, um deine Liste umzukehren.

reverseList [ "Prolog", "C", "Idris", "Assembly" ]
    --> [ "Assembly", "Idris", "C", "Prolog" ]

6. Prüfen, ob eine Liste spannend ist

Du liebst zwar alle Sprachen, aber Elm hat einen besonderen Platz in deinem Herzen. Deshalb bist du von einer Liste von Sprachen richtig begeistert, wenn:

  • Das erste Element der Liste Elm ist.
  • Oder das zweite Element der Liste Elm ist und die Liste drei oder weniger Sprachen enthält.

Implementiere die Funktion excitingList, um zu prüfen, ob eine Liste von Sprachen spannend ist:

excitingList [ "Nim", "Elm" ]
    --> True
Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab
Elm Exercism

Bereit, mit Tracks on Tracks on Tracks zu starten?

Melde dich bei Exercism an, um Elm mit 28 Konzepte110 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.