الفرق بين المراجعتين لصفحة: «Ruby/Comparable/clamp»

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: المعامل <code>clamp‎</code> الخاص بالصنف <code>Comparable </code> في روبي}}</noinclude> تصنيف: Ruby ت...'
 
ط مراجعة وتدقيق
 
(3 مراجعات متوسطة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: المعامل <code>clamp‎</code> الخاص بالصنف <code>Comparable </code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: التابع <code>clamp‎</code> الخاص بالصنف <code>Comparable</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Comparable]]
[[تصنيف: Ruby Comparable]]
 
يعيد التابع ‎ <code>clamp</code>‎الوسيط المُعطى <code>min</code> (أنظر فقرة البنية العامة) إن كان ناتج <code>obj <=> min</code> أقل من <code>0</code>، أو يعيد <code>max</code> إن كان عائد <code>obj <=> max</code> أكبر من <code>0</code>؛ خلا ذلك، سيعيد الكائنَ <code>obj</code> الذي استدعي معهق أي إن كان واقعًا ضمن المجال.
يتحقق التابع ‎<code>clamp</code>‎مما إذا كان الكائن الذي استُدعي معه محصورا بين الكائنين المٌمرّرين إليه.


== البنية العامة ==
== البنية العامة ==
<syntaxhighlight lang="ruby">
<syntaxhighlight lang="ruby">
between?(min, max) → true or false
clamp(min, max) → obj
</syntaxhighlight>
</syntaxhighlight>


سطر 14: سطر 13:


=== <code>''min''</code> ===
=== <code>''min''</code> ===
يمثل هذا المعامل القيمة الدنيا في المقارنة.
يمثل هذا المعامل القيمة الدنيا.


=== <code>''max''</code>'' '' ===
=== <code>''max''</code>'' '' ===
يمثل هذا المعامل القيمة القصوى في المقارنة.
يمثل هذا المعامل القيمة القصوى.


== القيمة المٌعادة ==
== القيمة المعادة ==
يعيد التابع <code>between?</code>‎ القيمة <code>false</code> إن أعاد التعبير<code>''obj'' <=> ''min''</code> قيمة أصغر من ‎‎<code>0</code> أو إن أعاد التعبير  <code>''obj'' <=> ''max''</code>'' قيمة أكبر من <code>0</code>''، خلا ذلك سيعيد <code>true</code>.
تُعاد قيمة المعامل <code>min</code> إن كانت قيمة الكائن المعطى أصغر منها، أو تُعاد قيمة المعامل <code>max</code> إن كانت قيمة الكائن المعطى أكبر منها؛ خلا ذلك، يُعاد الكائن نفسه المعطى أي إن كان واقعًا ضمن المجال.


== أمثلة ==
== أمثلة ==
أمثلة عن استخدام التابع <code>between?</code>‎:<syntaxhighlight lang="ruby">
أمثلة عن استخدام التابع <code>clamp</code>‎:<syntaxhighlight lang="ruby">
3.between?(1, 5)               #=> true
12.clamp(0, 100)        #=> 12
6.between?(1, 5)               #=> false
523.clamp(0, 100)       #=> 100
'cat'.between?('ant', 'dog')   #=> true
-3.123.clamp(0, 100)     #=> 0
'gnu'.between?('ant', 'dog')   #=> false
 
'd'.clamp('a', 'f')     #=> 'd'
'z'.clamp('a', 'f')     #=> 'f'
</syntaxhighlight>
</syntaxhighlight>


== أنظر أيضًا ==
== انظر أيضًا ==
* المعامل [[Ruby/Comparable/Less than|<]]: يقارن المعامل <code><</code> بين كائنين بناءً  على النتيجة التي يعيدها المعامل <code><=></code> الخاص بالمُستقبِل (receiver). إذ يعيد القيمة <code>true</code> إن  أعاد المعامل <code><=></code> القيمة ‎<code>1</code>‎ ، وإلا فسيعيد <code>false</code>.
* التابع [[Ruby/Comparable/between-3F|‎<code>between?</code>]]: يتحقق فيما إذا كان الكائن الذي استُدعي معه محصورا بين الكائنين المٌمرّرين إليه.
*  المعامل <code>‎‎‎[[Ruby/Comparable/Greater-3D|<=‎]]</code> : يقارن المعامل <code>‎‎‎<=‎</code> بين كائنين بناءً  على النتيجة التي يعيدها المعامل <code><=></code> الخاص بالمُستقبِل (receiver). إذ يعيد القيمة <code>true</code> إن  أعاد المعامل <code><=></code> القيمة ‎<code>-1</code>‎ أو <code>0</code>، وإلا فسيعيد <code>false</code>.


== مصادر ==
== مصادر ==
* [http://ruby-doc.org/core-2.5.1/Comparable.html#method-i-between-3F قسم التابع <code>between?</code>‎ في الصنف Array في توثيق روبي الرسمي.]
* [http://ruby-doc.org/core-2.5.1/Comparable.html#method-i-between-3F قسم التابع between?‎ في الصنف Comparable في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 09:21، 10 نوفمبر 2018

يعيد التابع ‎ clamp‎الوسيط المُعطى min (أنظر فقرة البنية العامة) إن كان ناتج obj <=> min أقل من 0، أو يعيد max إن كان عائد obj <=> max أكبر من 0؛ خلا ذلك، سيعيد الكائنَ obj الذي استدعي معهق أي إن كان واقعًا ضمن المجال.

البنية العامة

clamp(min, max)  obj

المعاملات

min

يمثل هذا المعامل القيمة الدنيا.

max 

يمثل هذا المعامل القيمة القصوى.

القيمة المعادة

تُعاد قيمة المعامل min إن كانت قيمة الكائن المعطى أصغر منها، أو تُعاد قيمة المعامل max إن كانت قيمة الكائن المعطى أكبر منها؛ خلا ذلك، يُعاد الكائن نفسه المعطى أي إن كان واقعًا ضمن المجال.

أمثلة

أمثلة عن استخدام التابع clamp‎:

12.clamp(0, 100)         #=> 12
523.clamp(0, 100)        #=> 100
-3.123.clamp(0, 100)     #=> 0

'd'.clamp('a', 'f')      #=> 'd'
'z'.clamp('a', 'f')      #=> 'f'

انظر أيضًا

  • التابع between?‎: يتحقق فيما إذا كان الكائن الذي استُدعي معه محصورا بين الكائنين المٌمرّرين إليه.

مصادر