كان هناك خادم حكيم أنقذ حياة أمير. وعد الملك بأن يمنحه كل ما يمكن أن يطلبه. ولأن الخادم كان يعلم أن الملك يحب الشطرنج، أخبره أنه يود الحصول على حبات من القمح. حبة واحدة على المربع الأول من رقعة الشطرنج، ويتضاعف عدد الحبات في كل مربع يليه.
احسب عدد حبات القمح على رقعة شطرنج.
تحتوي رقعة الشطرنج على 64 مربعًا. يحتوي المربع 1 على حبة واحدة، ويحتوي المربع 2 على حبتين، ويحتوي المربع 3 على أربع حبات، وهكذا، مع مضاعفة العدد في كل مرة.
اكتب كودًا يحسب:
هذا النوع من المسائل (حيث تعتمد الإجابة على إجابة سابقة) يُسمى غالبًا الاستدعاء الذاتي. هناك طرق مختلفة لكتابة الاستدعاء الذاتي، وقد يستحق الأمر البحث إذا لم تكن على دراية به. إن Pharo محسّنة جيدًا للاستدعاء الذاتي، وهو نمط شائع الاستخدام.
ملاحظة: في المواصفة الأصلية للمسألة، يُستدعى grainsCalculator عبر #square، لكننا أعدنا تسمية هذه الطريقة إلى #atSquare:، وهو اسم أقرب إلى أسلوب Smalltalk، ويصف بشكل أفضل أنك تطلب إجابة "عند مربع".
سجّل في Exercism لتتعلّم وتتقن Pharo عبر 50 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.