الفرق بين المراجعتين لصفحة: «Ruby/Float/prev float»
جميل-بيلوني (نقاش | مساهمات) إنشاء الصفحة. |
جميل-بيلوني (نقاش | مساهمات) |
||
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة) | |||
سطر 3: | سطر 3: | ||
[[تصنيف: Ruby Method]] | [[تصنيف: Ruby Method]] | ||
[[تصنيف: Ruby Float]] | [[تصنيف: Ruby Float]] | ||
يعيد التابع <code>prev_float</code> العدد | يعيد التابع <code>prev_float</code> العدد العشري الذي يسبق العدد العشري الذي استُدعي معه. | ||
يعيد استدعاء التابع <code>prev_float</code> مع القيمة <code>((-Float::MAX</code> والقيمة <code>(Float::INFINITY-)</code> القيمة الثابتة <code>-Float::INFINITY</code>. ويعيد استدعاء التابع بالشكل <code>Float::NAN.prev_float</code> القيمة <code>Float::NAN</code>. | |||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby"> | <syntaxhighlight lang="ruby">prev_float → float</syntaxhighlight> | ||
==القيمة المعادة== | ==القيمة المعادة== | ||
يعاد العدد السابق | يعاد العدد العشري السابق للعدد العشري المعطى. | ||
==أمثلة== | ==أمثلة== | ||
مثال على استخدام التابع <code> | مثال على استخدام التابع <code>prev_float</code>: | ||
<syntaxhighlight lang="ruby">1. | <syntaxhighlight lang="ruby">0.01.prev_float #=> 0.009999999999999998 | ||
1.0.prev_float #=> 0.9999999999999999 | |||
100.0.prev_float #=> 99.99999999999999 | |||
0.01 - 0.01.prev_float #=> 1.734723475976807e-18 | |||
1.0 - 1.0.prev_float #=> 1.1102230246251565e-16 | |||
100.0 - 100.0.prev_float #=> 1.4210854715202004e-14 | |||
f = 0.01; 20.times { printf "%-20a %s\n", f, f.to_s; f = f.prev_float } | |||
#=> 0x1.47ae147ae147bp-7 0.01 | |||
# 0x1.47ae147ae147ap-7 0.009999999999999998 | |||
# 0x1.47ae147ae1479p-7 0.009999999999999997 | |||
# 0x1.47ae147ae1478p-7 0.009999999999999995 | |||
# 0x1.47ae147ae1477p-7 0.009999999999999993 | |||
# 0x1.47ae147ae1476p-7 0.009999999999999992 | |||
# 0x1.47ae147ae1475p-7 0.00999999999999999 | |||
# 0x1.47ae147ae1474p-7 0.009999999999999988 | |||
# 0x1.47ae147ae1473p-7 0.009999999999999986 | |||
# 0x1.47ae147ae1472p-7 0.009999999999999985 | |||
# 0x1.47ae147ae1471p-7 0.009999999999999983 | |||
# 0x1.47ae147ae147p-7 0.009999999999999981 | |||
# 0x1.47ae147ae146fp-7 0.00999999999999998 | |||
# 0x1.47ae147ae146ep-7 0.009999999999999978 | |||
# 0x1.47ae147ae146dp-7 0.009999999999999976 | |||
# 0x1.47ae147ae146cp-7 0.009999999999999974 | |||
# 0x1.47ae147ae146bp-7 0.009999999999999972 | |||
# 0x1.47ae147ae146ap-7 0.00999999999999997 | |||
# 0x1.47ae147ae1469p-7 0.009999999999999969 | |||
# 0x1.47ae147ae1468p-7 0.009999999999999967</syntaxhighlight> | |||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع <code>[[Ruby/Float/next| | * التابع <code>[[Ruby/Float/next float|next_float]]</code>: يعيد العدد العشري الذي يلي العدد العشري الذي استُدعي معه. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/ | *[http://ruby-doc.org/core-2.5.1/Float.html#method-i-prev_float قسم التابع prev_float في الصنف Float في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 07:27، 24 نوفمبر 2018
يعيد التابع prev_float
العدد العشري الذي يسبق العدد العشري الذي استُدعي معه.
يعيد استدعاء التابع prev_float
مع القيمة ((-Float::MAX
والقيمة (Float::INFINITY-)
القيمة الثابتة -Float::INFINITY
. ويعيد استدعاء التابع بالشكل Float::NAN.prev_float
القيمة Float::NAN
.
البنية العامة
prev_float → float
القيمة المعادة
يعاد العدد العشري السابق للعدد العشري المعطى.
أمثلة
مثال على استخدام التابع prev_float
:
0.01.prev_float #=> 0.009999999999999998
1.0.prev_float #=> 0.9999999999999999
100.0.prev_float #=> 99.99999999999999
0.01 - 0.01.prev_float #=> 1.734723475976807e-18
1.0 - 1.0.prev_float #=> 1.1102230246251565e-16
100.0 - 100.0.prev_float #=> 1.4210854715202004e-14
f = 0.01; 20.times { printf "%-20a %s\n", f, f.to_s; f = f.prev_float }
#=> 0x1.47ae147ae147bp-7 0.01
# 0x1.47ae147ae147ap-7 0.009999999999999998
# 0x1.47ae147ae1479p-7 0.009999999999999997
# 0x1.47ae147ae1478p-7 0.009999999999999995
# 0x1.47ae147ae1477p-7 0.009999999999999993
# 0x1.47ae147ae1476p-7 0.009999999999999992
# 0x1.47ae147ae1475p-7 0.00999999999999999
# 0x1.47ae147ae1474p-7 0.009999999999999988
# 0x1.47ae147ae1473p-7 0.009999999999999986
# 0x1.47ae147ae1472p-7 0.009999999999999985
# 0x1.47ae147ae1471p-7 0.009999999999999983
# 0x1.47ae147ae147p-7 0.009999999999999981
# 0x1.47ae147ae146fp-7 0.00999999999999998
# 0x1.47ae147ae146ep-7 0.009999999999999978
# 0x1.47ae147ae146dp-7 0.009999999999999976
# 0x1.47ae147ae146cp-7 0.009999999999999974
# 0x1.47ae147ae146bp-7 0.009999999999999972
# 0x1.47ae147ae146ap-7 0.00999999999999997
# 0x1.47ae147ae1469p-7 0.009999999999999969
# 0x1.47ae147ae1468p-7 0.009999999999999967
انظر أيضا
- التابع
next_float
: يعيد العدد العشري الذي يلي العدد العشري الذي استُدعي معه.