ETL

ETL

Einfach

Einführung

Du arbeitest für ein Unternehmen, das ein Online-Multiplayer-Spiel namens Lexiconia entwickelt.

Um das Spiel zu spielen, bekommt jeder Spieler 13 Buchstaben, die er zu Wörtern umsortieren muss. Verschiedene Buchstaben haben unterschiedliche Punktwerte, denn mit manchen Buchstaben lassen sich leichter Wörter bilden als mit anderen.

Das Spiel ist ursprünglich auf Englisch erschienen und sehr beliebt. Jetzt möchte das Unternehmen auf weitere Sprachen expandieren.

Verschiedene Sprachen müssen unterschiedliche Punktwerte für Buchstaben unterstützen. Wie viele Punkte ein Buchstabe wert ist, hängt davon ab, wie häufig er im Vergleich zu anderen Buchstaben der jeweiligen Sprache verwendet wird.

Der Buchstabe „C“ zum Beispiel ist im Englischen recht häufig und bringt nur 3 Punkte. Im Norwegischen ist er dagegen sehr selten und bringt 10 Punkte.

Damit sich neue Sprachen leichter hinzufügen lassen, muss dein Team ändern, wie Buchstaben und ihre Punktwerte im Spiel gespeichert werden.

Anleitung

Deine Aufgabe ist es, das Datenformat der Buchstaben und ihrer Punktwerte im Spiel zu ändern.

Derzeit werden die Buchstaben nach ihrer Punktzahl in Gruppen gespeichert, in einer Eins-zu-viele-Zuordnung.

  • 1 Punkt: „A“, „E“, „I“, „O“, „U“, „L“, „N“, „R“, „S“, „T“,
  • 2 Punkte: „D“, „G“,
  • 3 Punkte: „B“, „C“, „M“, „P“,
  • 4 Punkte: „F“, „H“, „V“, „W“, „Y“,
  • 5 Punkte: „K“,
  • 8 Punkte: „J“, „X“,
  • 10 Punkte: „Q“, „Z“,

Das muss geändert werden, sodass jeder einzelne Buchstabe mit seiner Punktzahl in einer Eins-zu-eins-Zuordnung gespeichert wird.

  • „a“ ist 1 Punkt wert.
  • „b“ ist 3 Punkte wert.
  • „c“ ist 3 Punkte wert.
  • „d“ ist 2 Punkte wert.
  • usw.

Im Rahmen dieser Änderung hat das Team außerdem beschlossen, die Buchstaben in Kleinbuchstaben statt in Großbuchstaben zu ändern.

Note

Wenn du sehen möchtest, wie die Daten vorher strukturiert waren und wie sie geändert werden müssen, schau dir die Beispiele in der Testsuite an.

Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab
C++ Exercism

Bereit, mit ETL zu starten?

Melde dich bei Exercism an, um C++ mit 19 Konzepte100 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.