التابع Float.divmod
في روبي
اذهب إلى التنقل
اذهب إلى البحث
يعيد التابع divmod
مصفوفة تحتوي على حاصل (quotient) وباقي قسمة العدد الذي استُدعي معه على العدد المُمرَّر إليه.
البنية العامة
divmod(numeric) → array
إن كان لدينا العددين q
و r = x.divmod(y)
، فيكون:
q = floor(x/y)
x = q*y + r
يتم تقريب حاصل القسمة نحو اللانهاية السالبة، كما هو موضح في الجدول التالي:
a | b | a.divmod(b) | a/b | a.modulo(b) | a.remainder(b)
------+-----+---------------+---------+-------------+---------------
13 | 4 | 3, 1 | 3 | 1 | 1
------+-----+---------------+---------+-------------+---------------
13 | -4 | -4, -3 | -4 | -3 | 1
------+-----+---------------+---------+-------------+---------------
-13 | 4 | -4, 3 | -4 | 3 | -1
------+-----+---------------+---------+-------------+---------------
-13 | -4 | 3, -1 | 3 | -1 | -1
------+-----+---------------+---------+-------------+---------------
11.5 | 4 | 2, 3.5 | 2.875 | 3.5 | 3.5
------+-----+---------------+---------+-------------+---------------
11.5 | -4 | -3, -0.5 | -2.875 | -0.5 | 3.5
------+-----+---------------+---------+-------------+---------------
-11.5 | 4 | -3, 0.5 | -2.875 | 0.5 | -3.5
------+-----+---------------+---------+-------------+---------------
-11.5 | -4 | 2, -3.5 | 2.875 | -3.5 | -3.5
المعاملات
numeric
عدد يمثِّل المقسوم عليه.
القيمة المعادة
تعاد مصفوفة تحتوي على حاصل (quotient) وباقي قسمة العدد المعطى على العدد numeric
.
أمثلة
مثال على استخدام التابع divmod
:
11.divmod(3) #=> [3, 2]
11.divmod(-3) #=> [-4, -1]
11.divmod(3.5) #=> [3, 0.5]
(-11).divmod(3.5) #=> [-4, 3.0]
11.5.divmod(3.5) #=> [3, 1.0]
انظر أيضا
- المعامل
%
: يعيد باقي عملية قسمة عدد عشري على عدد آخر. - المعامل
/
: يعيد ناتج عملية القسمة بين عدد عشري وعدد آخر.
- التابع
divmod
: يعيد مصفوفة تحتوي على حاصل (quotient) وباقي قسمة العدد الذي استُدعي معه على العدد المُمرَّر إليه.