قطرات المطر نسخة أكثر تعقيدًا بقليل من تحدي FizzBuzz، وهو سؤال مقابلات عمل كلاسيكي.
مهمتك هي تحويل عدد إلى أصوات قطرات المطر المقابلة له.
إذا كان العدد المعطى:
"Plong"."PlingPlang"."34".من الطرق الشائعة لاختبار ما إذا كان عدد يقبل القسمة على عدد آخر دون باقٍ أن تقارن باقي القسمة أو المقياس بالصفر. معظم اللغات توفر عوامل أو دوال لأحد هذين (أو لكليهما).
من الأفضل حل هذا التمرين باستخدام عامل % في Python (باقي القسمة)، وهو يُرجع باقي قسمة عددين صحيحين موجبين.
وله مكافئ من نوع طريقة، هو operator.mod() في وحدة operator.
توفّر Python أيضًا طرقًا إضافية لحساب "الباقي" في وحدة math.
تتصرف math.fmod() مثل %، لكنها تعمل على أعداد عشرية.
وتُطبّق math.remainder() خوارزمية "الخطوة الأقرب إلى الصفر" لحساب باقي القسمة.
وبينما نشجعك على التعرّف على هذه الطرق، فإن أيًّا منهما لن يطابق تمامًا نتيجة %، ولا ننصح باستخدامهما في هذا التمرين.
تُعطي الدالة المدمجة divmod() أيضًا باقيًا يطابق % إذا استُخدمت مع عددين صحيحين موجبين، لكنها تُرجع tuple لا بد من فكّ حزمته.
سجّل في Exercism لتتعلّم وتتقن Python عبر 17 مفهومًا146 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.
استكشف حلولًا تستخدم خطوطًا دالية، وضرب المصفوفات، وحلولًا مبنية على جدول محسوب مسبقًا باستخدام ماكرو، ومنهجًا كائني التوجه، واستخدامًا مبهرًا لكل من Python وTCL، ونسخة للمؤسسات.