الأيزوغرام

الأيزوغرام

سهل

التعليمات

حدّد ما إذا كانت كلمة أو عبارة ما إيزوغرامًا.

الإيزوغرام (وتُعرف أيضًا باسم «الكلمة غير النمطية») هو كلمة أو عبارة لا يتكرر فيها حرف، لكن يُسمح للمسافات والشرطات بالظهور أكثر من مرة.

من أمثلة الإيزوغرام:

  • lumberjacks
  • background
  • downstream
  • six-year-old

لكن كلمة isograms ليست إيزوغرامًا، لأن حرف s يتكرر فيها.

تلميحات

يتعامل هذا التمرين مع بيانات نصية. ولأسباب تاريخية، فإن نوع String في Haskell مرادف لـ [Char]، وهي مصفوفة من المحارف. ولمعالجة البيانات النصية بكفاءة أكبر، يمكن استخدام نوع Text.

وكامتداد اختياري لهذا التمرين، يمكنك

  • أن تقرأ عن أنواع السلاسل النصية في Haskell.

  • أن تضيف - text إلى قائمة اعتمادياتك في package.yaml.

  • أن تستورد Data.Text بالكيفية التالية:

      import qualified Data.Text as T
      import           Data.Text (Text)
    
  • أن تكتب الآن مثلًا isIsogram :: Text -> Bool وتشير إلى مُركِّبات Data.Text مثل T.toLower.

  • أن تبحث عن توثيق Data.Text.

هذا الجزء اختياري بالكامل.


المصدر

ويكيبيديايفتح الرابط في نافذة أو علامة تبويب جديدة
تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
Haskell Exercism

مستعد لبدء الأيزوغرام؟

سجّل في Exercism لتتعلّم وتتقن Haskell عبر 107 تمارين، وإرشاد بشري حقيقي، وكل ذلك مجانًا.