الدالة divmod()‎ في بايثون

من موسوعة حسوب
مراجعة 13:04، 21 مايو 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تعيد الدّالة divmod()‎ زوجًا من الأعداد تُمثّل ناتج وباقي قسمة العددين عند استعمال قسمة الأعداد الصّحيحة.

البنية العامة

 divmod(a, b)

المعاملات

a

قيمة عددية تمثل المقسوم.

b

قيمة عددية تمثل المقسوم عليه.

القيمة المعادة

عند استعمال أنواع operand المختلطة (mixed operand types)، فستُطبّق قواعد عاملات حسابات الأنواع الثّنائيّة (binary arithmetic operators). للأعداد الصّحيحة، ستكون النّتيجة، مُساويّة للزّوج ‎(‎‎a ‎‎/‎/‎ ‎b‎, ‎a ‎% ‎b‎)‎.

أمّا للأعداد العشريّة فستكون النّتيجة هي ‎(q‎, ‎a ‎% ‎b‎)‎ بحيث q يكون عادةً نتيجة العمليّة ‎math‎.‎floor‎(‎a‎ ‎/‎ ‎b‎)‎، إلّا أنّه يُمكن أن يكون أصغر من ذلك بالعدد 1. وعلى أيّة حال، ستكون نتيجة العمليّة ‎q ‎* ‎b ‎+ ‎a ‎% ‎b قريبةً جدًّا من a، إن كان ‎a‎ ‎% ‎b مُخالفًا للصّفر، فسيكون لها وb نفس العلامة (sign)، مع 0‎ ‎<‎=‎ abs‎(‎a‎ ‎%‎ ‎b‎)‎ ‎<‎ ‎abs‎(b‎)‎‎.

أمثلة

المثال التّالي يوضّح كيفيّة عمل هذه الدّالة:

 >>> divmod(25, 5)
(5, 0)
>>> divmod(12, 5)
(2, 2)
>>> divmod(13, 5)
(2, 3)
>>> divmod(13.5, 5)
(2.0, 3.5)
>>> divmod(13.5, 5.5)
(2.0, 2.5)

انظر أيضًا

مصادر