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

من موسوعة حسوب
< Ruby‏ | Float
مراجعة 09:19، 24 نوفمبر 2018 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يعيد التابع truncate‎ العدد العشري الذي استُدعي معه بعد اقتطاعه إلى دقة (precision) محدَّدة.

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

truncate([ndigits])    integer or float

المعاملات

ndigits‎

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

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

يعيد التابع truncate‎ العدد الذي استُدعي معه مُقتطعًا وفق دقة (precision) تساوي ndigits رقم عشري. إذا كانت الدقة سالبة، فإنّ القيمة المعادة ستكون عددًا صحيحًا مع ndigits.abs صفر إضافي على الأقل. في حال كانت قيمة ndigits‎ منعدمة أو موجبة، فسيعيد التابع truncate‎ العدد الذي استُدعي معه.

أمثلة

مثال على استعمال التابع truncate‎:

2.8.truncate           #=> 2
(-2.8).truncate        #=> -2
1.234567.truncate(2)   #=> 1.23
34567.89.truncate(-2)  #=> 34500

يُلاحظ أن الدقة المحدودة للعمليات الحسابية التي تُجرَى على الأعداد العشرية قد تؤدي إلى نتائج مُدهشة. إليك المثال التالي:

(0.3 / 0.1).truncate  #=> 2 (!)

انظر أيضا

  • التابع round: يقرِّب العدد العشري الذي استُدعي معه إلى أقرب قيمة مع دقة (precision) تساوي العدد الممرر إليه.
  • التابع ceil: يعيد أصغر عدد من الأعداد الأكبر من أو تساوي قيمة العدد العشري الذي استُدعي معه.

مصادر