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.
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.
"|"), Unterstrichen ("_") und Leerzeichen (" ") gezeichnet."?" ausgeben.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.
_ _
| _| _|
||_ _|
_ _
|_||_ |_
| _||_|
_ _ _
||_||_|
||_| _|
Das Raster wird als nullterminierter String dargestellt, mit einem Zeilenumbruch am Ende jeder Zeile.
| Register | Verwendung | Typ | Beschreibung |
|---|---|---|---|
$a0 |
Eingabe | Adresse | nullterminierter Eingabe-String |
$a1 |
Eingabe/Ausgabe | Adresse | nullterminierter Ergebnis-String, leer, wenn die Rastermaße ungültig sind |
$v0 |
Ausgabe | Ganzzahl | Rasterstatus (0 = ok, -1 = invalid columns, -2 = invalid rows) |
$t0-9 |
temporär | beliebig | zur temporären Speicherung |
Melde dich bei Exercism an, um MIPS Assembly mit 70 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.