الحبوب

الحبوب

سهل

مقدمة

كان هناك خادم حكيم أنقذ حياة أمير. وعد الملك بأن يمنحه كل ما يمكن أن يطلبه. ولأن الخادم كان يعلم أن الملك يحب الشطرنج، أخبره أنه يود الحصول على حبات من القمح. حبة واحدة على المربع الأول من رقعة الشطرنج، ويتضاعف عدد الحبات في كل مربع يليه.

التعليمات

احسب عدد حبات القمح على رقعة شطرنج.

تحتوي رقعة الشطرنج على 64 مربعًا. يحتوي المربع 1 على حبة واحدة، ويحتوي المربع 2 على حبتين، ويحتوي المربع 3 على أربع حبات، وهكذا، مع مضاعفة العدد في كل مرة.

اكتب كودًا يحسب:

  • عدد الحبات على مربع معيّن
  • العدد الإجمالي للحبات على رقعة الشطرنج

الأعداد في Euphoria

في Euphoria، يمكن لنوع atom أن يحمل أي نوع من الأعداد، مع النوع الفرعي integer المخصص للأعداد الصحيحة. يمكن حل هذا التمرين في اللغات الشبيهة بـ C بإرجاع عدد صحيح 64 بت غير موقّع.

غير أن الأعداد الصحيحة في Euphoria موقّعة و_أصغر من كلمة الآلة ببت واحد_، وبالتالي فهي أصغر من أن تكفي هذا التمرين، في حين أن نوع atom يستطيع حمل أعداد صحيحة أكبر بالدقة المطلوبة البالغة 64 بت.

نسخة 32 بت

لا تزال هناك نسخة 32 بت من Euphoria، وهي موجودة حتى تستطيع التطبيقات القديمة الاستمرار في استخدام مكتبات dll/so المبنية مسبقًا بنسخة 32 بت عندما لا تتوفر نسخة 64 بت، أو أن المُغلّف الخاص بها مليء بإزاحات 32 بت مضمّنة مباشرة. هذه النسخة غير كافية على الإطلاق لحل هذه المهمة، لأن أنواع atom فيها تمتلك 53 بت من الدقة فقط. إذا كنت تواجه صعوبة في حل هذا التمرين على جهازك، فتأكد من أنك تستخدم نسخة 64 بت من Euphoria.

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

مستعد لبدء الحبوب؟

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