OCR-Zahlen

OCR-Zahlen

Einfach

Einführung

Deine beste Freundin Marta hat kürzlich ihren Traumjob ergattert und arbeitet jetzt mit den Sammlungen eines lokalen Geschichtsmuseums. Weil Marta von deinem Interesse am Programmieren weiß, weiht sie dich in ein Problem bei der Arbeit ein, bei dem es um eine bevorstehende Ausstellung zur Geschichte der Computertechnik geht. Die mathematische Fakultät einer lokalen Universität hatte mehrere Kisten mit historischen Ausdrucken gespendet, doch weil die Dokumente in so schlechtem Zustand sind, hat man entschieden, den Text zu digitalisieren. Allerdings hatte der alte Drucker der Universität so seine Eigenheiten, was die Darstellung von Text anging, und deine Freundin könnte deine Hilfe gut gebrauchen, um die Daten erfolgreich herauszuholen.

Anleitung

Optische Zeichenerkennung, kurz OCR (von englisch Optical Character Recognition), ist Software, die Bilder von Text in maschinenlesbaren Text umwandelt. Wenn du ein Raster aus Zeichen bekommst, das einige Ziffern darstellt, wandle das Raster in einen String aus Ziffern um. Wenn das Raster mehrere Zeilen von Zellen hat, sollten die Zeilen in der Ausgabe mit einem "," getrennt werden.

  • Das Raster besteht aus einer oder mehreren Zeilen von Zellen.
  • Jede Zeile des Rasters besteht aus einer oder mehreren Zellen.
  • Jede Zelle ist drei Spalten breit und vier Zeilen hoch (3x4) und stellt eine Ziffer dar.
  • Ziffern werden mit senkrechten Strichen ("|"), Unterstrichen ("_") und Leerzeichen (" ") gezeichnet.

Randfälle

  • Wenn die Eingabe keine gültige Größe hat, sollte dein Programm anzeigen, dass ein Fehler vorliegt.
  • Wenn die Eingabe die richtige Größe hat, aber eine Zelle nicht erkennbar ist, sollte dein Programm für dieses Zeichen ein "?" ausgeben.

Beispiele

Die folgende Eingabe (ohne die Kommentare) wird in "1234567890" umgewandelt.

      _  _     _  _  _  _  _  _  #
    | _| _||_||_ |_   ||_||_|| | # Decimal numbers.
    ||_  _|  | _||_|  ||_| _||_| #
                                 # The fourth line is always blank,

Die folgende Eingabe wird in "123,456,789" umgewandelt.

    _  _ 
  | _| _|
  ||_  _|
         
    _  _ 
|_||_ |_ 
  | _||_|
         
 _  _  _ 
  ||_||_|
  ||_| _|
         
Über GitHub bearbeiten Der Link öffnet sich in einem neuen Fenster oder Tab
PowerShell Exercism

Bereit, mit OCR-Zahlen zu starten?

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