التابع Float.ceil‎ في روبي

من موسوعة حسوب
< Ruby‏ | Float

يعيد التابع ceil أصغر عدد من الأعداد الأكبر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة.

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

ceil([ndigits])    integer or float

المعاملات

ndigits‎

عدد يمثل دقة المنازل العشري. القيمة الافتراضية هي: 0. عندما تكون الدقة ndigits‎ المعطاة قيمة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. وأما عندما تكون الدقة ndigits‎ سالبة، تكون القيمة المُعادة عدد صحيح متبوعًا بعدد أصفار مقداره ndigits.abs على الأقل.

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

يعاد عدد صحيح أو عشري أصغر عدد من الأعداد الأكبر من أو تساوي العدد المعطى وبدقة ndigits للمنازل العشرية فيه.

عندما تكون الدقة ndigits المعطاة قيمة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. وأما عندما تكون الدقة سالبة، تكون القيمة المُعادة عدد صحيح متبوعًا بعدد أصفار مقداره ndigits.abs على الأقل. المعطاة قيمة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. وأما عندما تكون الدقة سالبة، تكون القيمة المُعادة عدد صحيح متبوعًا بعدد أصفار مقداره ndigits.abs على الأقل.

أمثلة

مثال على استعمال التابع ceil:

1.2.ceil      #=> 2
2.0.ceil      #=> 2
(-1.2).ceil   #=> -1
(-2.0).ceil   #=> -2

1.234567.ceil(2)   #=> 1.24
1.234567.ceil(3)   #=> 1.235
1.234567.ceil(4)   #=> 1.2346
1.234567.ceil(5)   #=> 1.23457

34567.89.ceil(-5)  #=> 100000
34567.89.ceil(-4)  #=> 40000
34567.89.ceil(-3)  #=> 35000
34567.89.ceil(-2)  #=> 34600
34567.89.ceil(-1)  #=> 34570
34567.89.ceil(0)   #=> 34568
34567.89.ceil(1)   #=> 34567.9
34567.89.ceil(2)   #=> 34567.89
34567.89.ceil(3)   #=> 34567.89

يُلاحظ أن الدقة المحدودة للمنازل العشرية الحسابية (floating point arithmetic) قد تؤدي إلى نتائج مُدهشة:

(2.1 / 0.7).ceil  #=> 4 (!)

انظر أيضا

  • التابع floor: أكبر عدد من الأعداد الأصغر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة.

مصادر