الفرق بين المراجعتين ل"Ruby/Integer/size"

من موسوعة حسوب
< Ruby‏ | Integer
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>size‎</code> الخاص بالصنف <code>Integer</code> في روبي}}</noinclude> تصنيف: Ruby تصني...')
 
ط (مراجعة وتدقيق)
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>size‎</code> الخاص بالصنف <code>Integer</code> في روبي}}</noinclude>
+
<noinclude>{{DISPLAYTITLE: التابع <code>Integer.size‎</code> في روبي}}</noinclude>
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Method]]
 
[[تصنيف: Ruby Integer]]
 
[[تصنيف: Ruby Integer]]
يعيد التابع <code>size‎</code> عدد بتات قيمة العدد الذي استُدعي معه.  
+
يعيد التابع <code>size‎</code> عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه. الناتج يتعلق بالآلة المستخدمة.  
 
 
 
 
 
 
يُقصد بـ "عدد البتات" موضع أعلى بتة والتي تختلف عن بتة الإشارة [sign bit] (حيث يكون موضع  البتة الأقل دلالة [least significant bit] هو 1). إذا لم يكن تلك البتة موجودة  (أي إذا كانت قيمة الموضع صفر أو ناقص واحد) ، فسيُعاد الصفر.
 
 
 
 
 
 
 
هذا التابع يعيد ناتج التعبير ''<code>ceil(log2(int < 0 ? -int : int+1))‎</code>''.
 
 
 
 
 
 
 
يمكن استخدام هذا التابع لرصد التجاوزات (overflow) في <code>[[Ruby/Array/pack|Array#pack]]</code> ، كما يلي:<syntaxhighlight lang="ruby">if n.size < 32
 
 
 
  [n].pack("l") # no overflow
 
 
 
else
 
 
 
  raise "overflow"
 
 
 
end</syntaxhighlight>
 
 
==البنية العامة==
 
==البنية العامة==
 
<syntaxhighlight lang="ruby">size  →  int‎</syntaxhighlight>
 
<syntaxhighlight lang="ruby">size  →  int‎</syntaxhighlight>
==المعاملات==
+
==القيمة المعادة==
==القيمة المُعادة==
+
يعاد عد صحيح يمثِّل عدد البتات في تمثيل الآلة للعدد الذي استُدعي معه.  
يعيد التابع <code>size‎</code> عدد بتات قيمة العدد الذي استُدعي معه.  
 
 
 
 
 
 
 
يُقصد بـ "عدد البتات" موضع أعلى بتة والتي تختلف عن بتة الإشارة [sign bit] (حيث يكون موضع  البتة الأقل دلالة [least significant bit] هو 1). إذا لم يكن تلك البتة موجودة  (أي إذا كانت قيمة الموضع صفر أو ناقص واحد) ، فسيُعاد الصفر.
 
 
 
 
 
 
 
هذا التابع يعيد ناتج التعبير ''<code>ceil(log2(int < 0 ? -int : int+1))‎</code>''.
 
 
 
 
 
 
 
يمكن استخدام هذا التابع لرصد التجاوزات (overflow) في <code>[[Ruby/Array/pack|Array#pack]]</code> ، كما يلي:<syntaxhighlight lang="ruby">if n.size < 32
 
 
 
  [n].pack("l") # no overflow
 
 
 
else
 
 
 
  raise "overflow"
 
 
 
end</syntaxhighlight>
 
 
==أمثلة==
 
==أمثلة==
 
مثال على استخدام التابع <code>size‎</code>:
 
مثال على استخدام التابع <code>size‎</code>:
سطر 59: سطر 18:
 
‎</syntaxhighlight>
 
‎</syntaxhighlight>
 
==انظر أيضا==
 
==انظر أيضا==
* التابع <code>[[Ruby/Integer/bit_length|bit_length]]</code>: يعيد التابع <code>bit_length‎</code> عدد بتات قيمة العدد الذي استُدعي معه.  
+
* التابع <code>[[Ruby/Integer/bit_length|bit_length]]</code>: يعيد عدد بتات قيمة العدد الذي استُدعي معه.  
 
 
 
 
 
 
يُقصد بـ "عدد البتات" موضع أعلى بتة والتي تختلف عن بتة الإشارة [sign bit] (حيث يكون موضع  البتة الأقل دلالة [least significant bit] هو 1). إذا لم يكن تلك البتة موجودة  (أي إذا كانت قيمة الموضع صفر أو ناقص واحد) ، فسيُعاد الصفر.
 
 
 
 
 
 
 
هذا التابع يعيد ناتج التعبير ''<code>ceil(log2(int < 0 ? -int : int+1))‎</code>''.
 
 
 
 
 
 
 
يمكن استخدام هذا التابع لرصد التجاوزات (overflow) في <code>[[Ruby/Array/pack|Array#pack]]</code> ، كما يلي:<syntaxhighlight lang="ruby">if n.bit_length < 32
 
 
 
  [n].pack("l") # no overflow
 
 
 
else
 
 
 
  raise "overflow"
 
 
 
end</syntaxhighlight>
 
  
 
==مصادر==
 
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Integer.html#method-i-size قسم التابع size‎ في الصنف Integer‎ في توثيق روبي الرسمي.]
+
*[http://ruby-doc.org/core-2.5.1/Integer.html#method-i-size قسم التابع size‎ في الصنف Integer‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 06:51، 15 نوفمبر 2018

يعيد التابع size‎ عدد البتات في تمثيل الآلة (machine representation) للعدد الذي استُدعي معه. الناتج يتعلق بالآلة المستخدمة.

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

size    int

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

يعاد عد صحيح يمثِّل عدد البتات في تمثيل الآلة للعدد الذي استُدعي معه.

أمثلة

مثال على استخدام التابع size‎:

1.size               #=> 8
-1.size              #=> 8
2147483647.size      #=> 8
(256**10 - 1).size   #=> 10
(256**20 - 1).size   #=> 20
(256**40 - 1).size   #=> 40

انظر أيضا

  • التابع bit_length: يعيد عدد بتات قيمة العدد الذي استُدعي معه.

مصادر