الدالة divmod()
في بايثون
تعيد الدّالة 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)