Dein Freund Yaʻqūb steht hinter der Theke im belebtesten Feinkostladen der Stadt und schneidet, wiegt und verpackt Bestellungen für eine nie endende Schlange hungriger Kunden. Damit alles zügig vorangeht, zieht jeder Kunde bei der Ankunft ein nummeriertes Ticket.
Wenn es Zeit ist, die nächste Person aufzurufen, liest Yaʻqūb deren Nummer laut vor, immer in ausgeschriebenen englischen Wörtern, damit alle sie klar hören.
Du bekommst eine Zahl. Deine Aufgabe ist es, sie in englische Wörter zu fassen, genau so, wie dein Freund sie laut sagen würde. Yaʻqūb rechnet mit Zahlen von 0 bis 999,999,999,999.
Beispiele:
In der Rust-Version ist das im Vergleich zu anderen Sprachversionen dieser Übung leicht abgewandelt. Statt dass du Fehler für Werte außerhalb des gültigen Bereichs zurückgeben musst, nutzen wir Rusts starkes Typsystem, um die Eingabe einzuschränken. Es ist viel einfacher, eine Funktion mit allen gültigen Eingaben umgehen zu lassen, als von den Nutzern deines Moduls zu verlangen, Fehler zu behandeln.
Füge die Fähigkeit hinzu, bis zum Maximalwert für u64 umzurechnen: 18_446_744_073_709_551_615.
Hinweise zur erwarteten Ausgabe findest du im letzten Testfall.
Melde dich bei Exercism an, um Rust mit 99 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.