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,透過 76 個練習 和真人引導來學習並精通 Delphi Pascal,全部免費。