الفرق بين المراجعتين ل"Ruby/Numeric/divmod"

من موسوعة حسوب
< Ruby‏ | Numeric
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<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>num</code> على <code>numeric</code>.
+
يعيد التابع <code>divmod</code> مصفوفة تحتوي على الحاصل (quotient) والباقي الناتج عن قسمة العدد الذي استُدعي معه على الوسيط المعطى <code>numeric</code>.
إن كان <code>q, r = x.divmod(y)</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">q = floor(x/y)
+
<syntaxhighlight lang="ruby">11.divmod(3)        #=> [3, 2]
x = q*y + r‎</syntaxhighlight>
+
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>Numeric</code> العملية <code>/</code>؛ فهذا يُترك للأصناف الفرعية.
+
* التابع <code>[[Ruby/Numeric/div|div]]</code>: يستخدم  العملية <code>/</code> لإجراء القسمة، ثم يحوّل النتيجة إلى عدد صحيح.  
* التابع <code>[[Ruby/Numeric/dup|dup]]</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: يستخدم العملية / لإجراء القسمة، ثم يحوّل النتيجة إلى عدد صحيح.

مصادر