الفرق بين المراجعتين لصفحة: «Ruby/Array/product»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>Array.product</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Ruby Arr...' |
لا ملخص تعديل |
||
سطر 4: | سطر 4: | ||
[[تصنيف: Ruby Array]] | [[تصنيف: Ruby Array]] | ||
يوزِّع التابع <code>product</code> عناصر المصفوفة التي استدعيت معه على جميع عناصر المصفوفات الممرَّرة إليه. | يوزِّع التابع <code>product</code> عناصر المصفوفة التي استدعيت معه على جميع عناصر المصفوفات الممرَّرة إليه. | ||
طول المصفوفة الناتجة يساوي جداء طول المصفوفة التي استُدعيت مع التابع بأطوال المصفوفات المُمرّرة إليه. | طول المصفوفة الناتجة يساوي جداء طول المصفوفة التي استُدعيت مع التابع بأطوال المصفوفات المُمرّرة إليه. | ||
عندما يُستدعى التابع <code>product</code> مع كتلة برمجية، فسيُعِدّ التابع كل التبديلات الممكنة بين عناصر المصفوفات ثم يعيد المصفوفة نفسها. | عندما يُستدعى التابع <code>product</code> مع كتلة برمجية، فسيُعِدّ التابع كل التبديلات الممكنة بين عناصر المصفوفات ثم يعيد المصفوفة نفسها. | ||
==البنية العامة== | ==البنية العامة== | ||
سطر 11: | سطر 13: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
<code>other_ary</code> | |||
=== <code>other_ary</code> === | |||
مصفوفة يراد توزيع عناصر المصفوفة المعطاة على عناصرها. | مصفوفة يراد توزيع عناصر المصفوفة المعطاة على عناصرها. | ||
… | |||
=== … === | |||
مصفوفات أخرى يراد توزيع عناصر المصفوفة المعطاة على عناصرها. | مصفوفات أخرى يراد توزيع عناصر المصفوفة المعطاة على عناصرها. | ||
==القيم المعادة== | ==القيم المعادة== | ||
سطر 32: | سطر 36: | ||
* التابع [[Ruby/Array/permutation | <code>permutation</code>]]: يعيد كل التبديلات (<code>permutations</code>) الممكنة لجميع عناصر مصفوفة، أو كل التبديلات المكونة من <code>n</code> عنصر من عناصر المصفوفة فقط ثم يعيد المصفوفة نفسها. | * التابع [[Ruby/Array/permutation | <code>permutation</code>]]: يعيد كل التبديلات (<code>permutations</code>) الممكنة لجميع عناصر مصفوفة، أو كل التبديلات المكونة من <code>n</code> عنصر من عناصر المصفوفة فقط ثم يعيد المصفوفة نفسها. | ||
==مصادر== | ==مصادر== | ||
* قسم التابع product في الصنف Array في توثيق روبي الرسمي. | * [https://ruby-doc.org/core-2.5.1/Array.html#method-i-product قسم التابع product في الصنف Array في توثيق روبي الرسمي.] |
مراجعة 18:23، 7 سبتمبر 2018
يوزِّع التابع product
عناصر المصفوفة التي استدعيت معه على جميع عناصر المصفوفات الممرَّرة إليه.
طول المصفوفة الناتجة يساوي جداء طول المصفوفة التي استُدعيت مع التابع بأطوال المصفوفات المُمرّرة إليه.
عندما يُستدعى التابع product
مع كتلة برمجية، فسيُعِدّ التابع كل التبديلات الممكنة بين عناصر المصفوفات ثم يعيد المصفوفة نفسها.
البنية العامة
product(other_ary, ...) → new_ary
product(other_ary, ...) { |p| block } → ary
المعاملات
other_ary
مصفوفة يراد توزيع عناصر المصفوفة المعطاة على عناصرها.
…
مصفوفات أخرى يراد توزيع عناصر المصفوفة المعطاة على عناصرها.
القيم المعادة
تعاد مصفوفة جديدة تحوي المصفوفات الناتجة عن توزيع عناصر المصفوفة المعطاة على عناصر المصفوفة other_ary
والمصفوفات الأخرى الممررة، أو تعاد المصفوفة نفسها المعطاة بعد إجراء عملية التوزيع إن أعطيت الكتلة block
.
أمثلة
أمثلة على استخدام التابع product
:
[1,2,3].product([4,5]) #=> [[1,4],[1,5],[2,4],[2,5],[3,4],[3,5]]
[1,2].product([1,2]) #=> [[1,1],[1,2],[2,1],[2,2]]
[1,2].product([3,4],[5,6]) #=> [[1,3,5],[1,3,6],[1,4,5],[1,4,6],
# [2,3,5],[2,3,6],[2,4,5],[2,4,6]]
[1,2].product() #=> [[1],[2]]
[1,2].product([]) #=> []
انظر أيضًا
- التابع
combination
: يجمِّع عناصر المصفوفة المعطاة مع بعضها بعضًا في مصفوفات بطول يساوي القيمةn
الممررة إليه ثم يضع هذه المصفوفات في المصفوفة نفسها المعطاة ويعيدها. - التابع
permutation
: يعيد كل التبديلات (permutations
) الممكنة لجميع عناصر مصفوفة، أو كل التبديلات المكونة منn
عنصر من عناصر المصفوفة فقط ثم يعيد المصفوفة نفسها.