ट्रैक
/
Haskell
Haskell
/
अभ्यास
/
OCR संख्याएँ
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 के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Haskell Exercism

OCR संख्याएँ शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और Haskell को 107 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।