OCR 숫자

OCR 숫자

보통

지침

파이프, 밑줄, 공백으로 이루어진 3 x 4 격자가 주어졌을 때, 어떤 숫자가 표현된 것인지, 아니면 알아볼 수 없는 상태인지 판별해요.

먼저, 단순한 이진 폰트를 0 또는 1을 담은 문자열로 변환해요.

이진 폰트는 파이프와 밑줄을 사용하며, 높이 네 줄, 너비 세 칸이에요.

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

"0"으로 변환돼요.

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

"1"로 변환돼요.

입력의 크기는 맞지만 알아볼 수 없다면, 프로그램은 '?'를 반환해야 해요.

입력의 크기가 맞지 않으면, 프로그램은 오류를 반환해야 해요.

여러 문자로 이루어진 이진 문자열을 인식하도록 프로그램을 고쳐요. 알아볼 수 없는 숫자는 ?로 바꿔요.

0부터 9까지의 모든 숫자를, 하나씩일 때도, 더 큰 문자열의 일부일 때도 인식하도록 프로그램을 고쳐요.

 _ 
 _|
|_ 
   

"2"로 변환돼요.

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

"1234567890"으로 변환돼요.

여러 숫자를 한 줄에 하나씩 처리하도록 프로그램을 고쳐요. 여러 줄을 변환할 때는 줄들을 쉼표로 이어요.

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

"123,456,789"로 변환돼요.

GitHub에서 편집 링크가 새 창이나 탭에서 열려요
Delphi Pascal Exercism

OCR 숫자 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 Delphi Pascal 트랙을 연습 문제 76개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.