Track
/
Haskell
Haskell
/
Esercizi
/
Numeri OCR
Numeri OCR

Numeri OCR

Medio

Istruzioni

Data una griglia 3 x 4 di barre verticali, underscore e spazi, determina quale numero è rappresentato, o se è illeggibile.

Primo passo

Per cominciare, converti un semplice font binario in una stringa che contiene 0 o 1.

Il font binario usa barre verticali e underscore: quattro righe di altezza e tre colonne di larghezza.

     _   #
    | |  # zero.
    |_|  #
         # the fourth row is always blank

Viene convertito in "0"

         #
      |  # one.
      |  #
         # (blank fourth row)

Viene convertito in "1"

Se l'input è della dimensione corretta, ma non è riconoscibile, il programma dovrebbe restituire '?'

Se l'input è della dimensione sbagliata, il programma dovrebbe restituire un errore.

Secondo passo

Aggiorna il programma perché riconosca stringhe binarie di più caratteri, sostituendo i numeri illeggibili con ?

Terzo passo

Aggiorna il programma perché riconosca tutti i numeri da 0 a 9, sia singolarmente sia come parte di una stringa più grande.

 _
 _|
|_

Viene convertito in "2"

      _  _     _  _  _  _  _  _  #
    | _| _||_||_ |_   ||_||_|| | # decimal numbers.
    ||_  _|  | _||_|  ||_| _||_| #
                                 # fourth line is always blank

Viene convertito in "1234567890"

Quarto passo

Aggiorna il programma perché gestisca più numeri, uno per riga. Quando converti più righe, uniscile con delle virgole.

    _  _
  | _| _|
  ||_  _|

    _  _
|_||_ |_
  | _||_|

 _  _  _
  ||_||_|
  ||_| _|

Viene convertito in "123,456,789".

Modifica tramite GitHub Il link si apre in una nuova finestra o scheda
Haskell Exercism

Vuoi iniziare Numeri OCR?

Iscriviti a Exercism per imparare e padroneggiare Haskell con 107 esercizi e il mentoring di persone reali, tutto gratis.