التابع Float.floor
في روبي
يعيد التابع floor
أكبر عدد من الأعداد الأصغر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة.
البنية العامة
floor([ndigits]) → integer or float
المعاملات
ndigits
عدد يمثل دقة المنازل العشرية. القيمة الافتراضية هي: 0. عندما تكون الدقة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. أي عندما تكون الدقة سالبة، تكون القيمة المُعادة عددًا صحيحًا متبوعًا بعدد أصفار مقداره ndigits.abs
على الأقل.
القيمة المعادة
يعاد عدد صحيح أو عشري يمثِّل أكبر عدد من الأعداد الأصغر من أو تساوي العدد الذي استُدعي معه وبدقة ndigits
للمنازل العشرية فيه. عندما تكون الدقة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. أي عندما تكون الدقة سالبة، تكون القيمة المُعادة عددًا صحيحًا متبوعًا بعدد أصفار مقداره ndigits.abs
على الأقل.
أمثلة
مثال على استعمال التابع floor
:
1.2.floor #=> 1
2.0.floor #=> 2
(-1.2).floor #=> -2
(-2.0).floor #=> -2
1.234567.floor(2) #=> 1.23
1.234567.floor(3) #=> 1.234
1.234567.floor(4) #=> 1.2345
1.234567.floor(5) #=> 1.23456
34567.89.floor(-5) #=> 0
34567.89.floor(-4) #=> 30000
34567.89.floor(-3) #=> 34000
34567.89.floor(-2) #=> 34500
34567.89.floor(-1) #=> 34560
34567.89.floor(0) #=> 34567
34567.89.floor(1) #=> 34567.8
34567.89.floor(2) #=> 34567.89
34567.89.floor(3) #=> 34567.89
يُلاحظ أن الدقة المحدودة للفاصلة العشرية الحسابية (floating point arithmetic) قد تؤدي إلى نتائج مُدهشة. اطلع على المثال التالي:
(0.3 / 0.1).floor #=> 2 (!)
انظر أيضا
- التابع
ceil
: يعيد أصغر عدد من الأعداد الأكبر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة.