Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تحليل الكلمات

جزء من قسم المنطق وتدفق العمليات في رحلة Ruby على Coddy. الدرس 54 من 56.

تحدٍ مستقل يجمع بين السلاسل النصية (strings)، وجداول التجزئة (hashes)، و Hash.new(0)، ودوال Enumerable، كل ذلك في آن واحد.

challenge icon

التحدي

متوسط

اقرأ سطراً واحداً من المدخلات، وهو عبارة عن جملة. قم بتحليلها واطبع ثلاثة أسطر:

  1. عدد الكلمات الفريدة (غير حساسة لحالة الأحرف، مع إزالة علامات الترقيم). الكلمات المتكررة تُحسب مرة واحدة فقط.
  2. الكلمات المتكررة (تلك التي تظهر أكثر من مرة)، مرتبة أبجدياً، ومدمجة بـ , . إذا لم يوجد أي منها، اطبع (none).
  3. كلمات الباليندرووم (Palindrome)، وهي الكلمات التي تُقرأ بنفس الطريقة من الأمام والخلف، بطول ≥ 2، مرتبة أبجدياً، ومدمجة بـ , . إذا لم يوجد أي منها، اطبع (none).

قم بإزالة الأحرف .,!?:;"() من كل كلمة قبل المعالجة. قم بتحويل كل شيء إلى أحرف صغيرة (Lowercase) للمقارنة.

للمدخل Madam saw a racecar. Dad said hello hello to mom.، يكون المخرج:

9
hello
dad, madam, mom, racecar

جرّب بنفسك

input = gets.chomp

# مهام: التقسيم، إزالة علامات الترقيم، تحويل للأحرف الصغيرة، ثم الطباعة:
#   العدد الفريد، الكلمات المتكررة، الكلمات المتناظرة (الطول >= 2)
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس المنطق وتدفق العمليات

تدرّب بنفسك: مترجم Ruby عبر الإنترنت