الفرق بين المراجعتين لصفحة: «Ruby/Numeric/divmod»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>divmod</code> الخاص بالصنف <code>Numeric</code> في روبي}}</noinclude> تصنيف: Ruby تصن...' |
لا ملخص تعديل |
||
| سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Numeric]] | [[تصنيف: Ruby Numeric]] | ||
يعيد التابع <code>divmod</code> مصفوفة تحتوي على الحاصل (quotient) والباقي | يعيد التابع <code>divmod</code> مصفوفة تحتوي على الحاصل (quotient) والباقي الناتج عن قسمة العدد الذي استُدعي معه على الوسيط المعطى <code>numeric</code>. | ||
يتم تقريب الحاصل نحو اللانهاية السالبة، كما هو موضح في الجدول التالي: | إن كان <code>q, r = x.divmod(y)</code> ، إذن:<syntaxhighlight lang="ruby"> q = floor(x/y) | ||
<syntaxhighlight lang="ruby"> a | b | a.divmod(b) | a/b | a.modulo(b) | a.remainder(b) | x = q*y + r</syntaxhighlight> | ||
يتم تقريب الحاصل نحو اللانهاية السالبة، كما هو موضح في الجدول التالي:<syntaxhighlight lang="ruby"> a | b | a.divmod(b) | a/b | a.modulo(b) | a.remainder(b) | |||
------+-----+---------------+---------+-------------+--------------- | ------+-----+---------------+---------+-------------+--------------- | ||
13 | 4 | 3, 1 | 3 | 1 | 1 | 13 | 4 | 3, 1 | 3 | 1 | 1 | ||
| سطر 24: | سطر 24: | ||
------+-----+---------------+---------+-------------+--------------- | ------+-----+---------------+---------+-------------+--------------- | ||
-11.5 | -4 | 2, -3.5 | 2.875 | -3.5 | -3.5</syntaxhighlight> | -11.5 | -4 | 2, -3.5 | 2.875 | -3.5 | -3.5</syntaxhighlight> | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">divmod(numeric) → array</syntaxhighlight> | <syntaxhighlight lang="ruby">divmod(numeric) → array</syntaxhighlight> | ||
| سطر 30: | سطر 29: | ||
===<code>numeric</code>=== | ===<code>numeric</code>=== | ||
عدد. | |||
==القيمة المُعادة== | ==القيمة المُعادة== | ||
يعيد التابع <code>divmod</code> مصفوفة تحتوي على الحاصل (quotient) والباقي الناتج عن قسمة العدد الذي استُدعي معه على الوسيط المعطى <code>numeric</code>. | |||
==أمثلة== | ==أمثلة== | ||
مثال على استخدام التابع <code>divmod</code>: | مثال على استخدام التابع <code>divmod</code>: | ||
<syntaxhighlight lang="ruby"> | <syntaxhighlight lang="ruby">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]</syntaxhighlight> | |||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/Numeric/div|div]]</code>: يستخدم العملية <code>/</code> لإجراء القسمة، ثم يحوّل النتيجة إلى عدد صحيح | * التابع <code>[[Ruby/Numeric/div|div]]</code>: يستخدم العملية <code>/</code> لإجراء القسمة، ثم يحوّل النتيجة إلى عدد صحيح. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/Numeric.html#method-i-divmod قسم التابع divmod في الصنف Numeric في توثيق روبي الرسمي.] | *[http://ruby-doc.org/core-2.5.1/Numeric.html#method-i-divmod قسم التابع divmod في الصنف Numeric في توثيق روبي الرسمي.] | ||
مراجعة 21:50، 27 أكتوبر 2018
يعيد التابع divmod مصفوفة تحتوي على الحاصل (quotient) والباقي الناتج عن قسمة العدد الذي استُدعي معه على الوسيط المعطى numeric.
إن كان 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
البنية العامة
divmod(numeric) → array
المعاملات
numeric
عدد.
القيمة المُعادة
يعيد التابع divmod مصفوفة تحتوي على الحاصل (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]
انظر أيضا
- التابع
div: يستخدم العملية/لإجراء القسمة، ثم يحوّل النتيجة إلى عدد صحيح.