الفرق بين المراجعتين لصفحة: «Ruby/Float/round»
جميل-بيلوني (نقاش | مساهمات) إنشاء الصفحة. |
جميل-بيلوني (نقاش | مساهمات) لا ملخص تعديل |
||
سطر 4: | سطر 4: | ||
[[تصنيف: Ruby Float]] | [[تصنيف: Ruby Float]] | ||
يقرِّب التابع <code>round</code> العدد الذي استُدعي معه إلى أقرب قيمة بدقة محدَّدة. | يقرِّب التابع <code>round</code> العدد الذي استُدعي معه إلى أقرب قيمة بدقة محدَّدة. | ||
==البنية العامة== | ==البنية العامة== | ||
<syntaxhighlight lang="ruby">round([ndigits]) | <syntaxhighlight lang="ruby">round([ndigits] [, half: mode]) → integer or float</syntaxhighlight> | ||
==المعاملات== | ==المعاملات== | ||
===<code>ndigits</code>=== | ===<code>ndigits</code>=== | ||
عدد يمثل دقة التقريب. | عدد يمثل دقة التقريب. عندما تكون الدقة المعطاة قيمة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. وأما عندما تكون الدقة سالبة، تكون القيمة المُعادة عدد صحيح متبوعًا بعدد أصفار مقداره <code>ndigits.abs</code> على الأقل. | ||
=== <code>half</code> === | |||
إذا أعطي المعامل <code>half</code> الاختياري، فستُقرَّب الأرقام التي تقع في المنتصف بين قيمتين مقرَّبتين ممكنتين وفقًا للوضع <code>mode</code> المُحدَّد. الأوضاع التي يمكن استعمالها مع هذا المعامل هي: | |||
*<code>:up</code> أو <code>nil:</code>: التقريب نحو النصف العلوي الأبعد عن الصفر (الوضع الافتراضي). | |||
*<code>:down</code>: التقريب نحو النصف السفلي باتجاه الصفر. | |||
*<code>:even</code>: التقريب نحو النصف الأقرب إلى عدد زوجي. | |||
==القيمة المعادة== | ==القيمة المعادة== | ||
يعاد عدد [[Ruby/Integer|صحيح]] أو [[Ruby/Float|عشري]] يمثِّل ناتج تقريب العدد المعطى إلى أقرب قيمة بدقة <code>ndigits</code> للمنازل العشري. | يعاد عدد [[Ruby/Integer|صحيح]] أو [[Ruby/Float|عشري]] يمثِّل ناتج تقريب العدد المعطى إلى أقرب قيمة بدقة <code>ndigits</code> للمنازل العشري. عندما تكون الدقة <code>ndigits</code> المعطاة قيمة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. وأما عندما تكون الدقة سالبة، تكون القيمة المُعادة عدد صحيح متبوعًا بعدد أصفار مقداره <code>ndigits.abs</code> على الأقل. | ||
== أمثلة == | |||
مثال على استعمال التابع <code>round</code>:<syntaxhighlight lang="ruby"> | |||
1.4.round #=> 1 | |||
1.5.round #=> 2 | |||
1.6.round #=> 2 | |||
(-1.5).round #=> -2 | |||
1.234567.round(2) #=> 1.23 | |||
1.234567.round(3) #=> 1.235 | |||
1.234567.round(4) #=> 1.2346 | |||
1.234567.round(5) #=> 1.23457 | |||
34567.89.round(-5) #=> 0 | |||
34567.89.round(-4) #=> 30000 | |||
34567.89.round(-3) #=> 35000 | |||
34567.89.round(-2) #=> 34600 | |||
34567.89.round(-1) #=> 34570 | |||
34567.89.round(0) #=> 34568 | |||
34567.89.round(1) #=> 34567.9 | |||
34567.89.round(2) #=> 34567.89 | |||
34567.89.round(3) #=> 34567.89 | |||
</syntaxhighlight>مثال على استعمال التابع <code>round</code> مع تمرير المعامل <code>half</code> إليه:<syntaxhighlight lang="ruby"> | |||
2.5.round(half: :up) #=> 3 | |||
2.5.round(half: :down) #=> 2 | |||
2.5.round(half: :even) #=> 2 | |||
3.5.round(half: :up) #=> 4 | |||
3.5.round(half: :down) #=> 3 | |||
3.5.round(half: :even) #=> 4 | |||
(-2.5).round(half: :up) #=> -3 | |||
(-2.5).round(half: :down) #=> -2 | |||
(-2.5).round(half: :even) #=> -2 | |||
</syntaxhighlight> | |||
==انظر أيضا== | ==انظر أيضا== | ||
* التابع [[Ruby/Float/ceil|<code>ceil</code>]]: يعيد أصغر عدد من الأعداد الأكبر من أو تساوي العدد الذي استُدعي معه وبدقة محدَّدة. | * التابع [[Ruby/Float/ceil|<code>ceil</code>]]: يعيد أصغر عدد من الأعداد الأكبر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة. | ||
* التابع [[Ruby/Float/floor|<code>floor</code>]]: يعيد أكبر عدد من الأعداد الأصغر من أو تساوي العدد الذي استُدعي معه وبدقة محدَّدة. | * التابع [[Ruby/Float/floor|<code>floor</code>]]: يعيد أكبر عدد من الأعداد الأصغر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة. | ||
* التابع <code>[[Ruby/Float/truncate|truncate]]</code>: يعيد العدد الذي استُدعي معه بعد اقتطاع المنازل العشرية منه بمقدار محدَّد. | * التابع <code>[[Ruby/Float/truncate|truncate]]</code>: يعيد العدد العشري الذي استُدعي معه بعد اقتطاع المنازل العشرية منه بمقدار محدَّد. | ||
==مصادر== | ==مصادر== | ||
*[http://ruby-doc.org/core-2.5.1/ | *[http://ruby-doc.org/core-2.5.1/Float.html#method-i-round قسم التابع round في الصنف Float في توثيق روبي الرسمي.] |
المراجعة الحالية بتاريخ 08:29، 24 نوفمبر 2018
يقرِّب التابع round
العدد الذي استُدعي معه إلى أقرب قيمة بدقة محدَّدة.
البنية العامة
round([ndigits] [, half: mode]) → integer or float
المعاملات
ndigits
عدد يمثل دقة التقريب. عندما تكون الدقة المعطاة قيمة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. وأما عندما تكون الدقة سالبة، تكون القيمة المُعادة عدد صحيح متبوعًا بعدد أصفار مقداره ndigits.abs
على الأقل.
half
إذا أعطي المعامل half
الاختياري، فستُقرَّب الأرقام التي تقع في المنتصف بين قيمتين مقرَّبتين ممكنتين وفقًا للوضع mode
المُحدَّد. الأوضاع التي يمكن استعمالها مع هذا المعامل هي:
:up
أوnil:
: التقريب نحو النصف العلوي الأبعد عن الصفر (الوضع الافتراضي).:down
: التقريب نحو النصف السفلي باتجاه الصفر.:even
: التقريب نحو النصف الأقرب إلى عدد زوجي.
القيمة المعادة
يعاد عدد صحيح أو عشري يمثِّل ناتج تقريب العدد المعطى إلى أقرب قيمة بدقة ndigits
للمنازل العشري. عندما تكون الدقة ndigits
المعطاة قيمة موجبة، يعاد عدد عشري، وإلا يُعاد عددٌ صحيحٌ. وأما عندما تكون الدقة سالبة، تكون القيمة المُعادة عدد صحيح متبوعًا بعدد أصفار مقداره ndigits.abs
على الأقل.
أمثلة
مثال على استعمال التابع round
:
1.4.round #=> 1
1.5.round #=> 2
1.6.round #=> 2
(-1.5).round #=> -2
1.234567.round(2) #=> 1.23
1.234567.round(3) #=> 1.235
1.234567.round(4) #=> 1.2346
1.234567.round(5) #=> 1.23457
34567.89.round(-5) #=> 0
34567.89.round(-4) #=> 30000
34567.89.round(-3) #=> 35000
34567.89.round(-2) #=> 34600
34567.89.round(-1) #=> 34570
34567.89.round(0) #=> 34568
34567.89.round(1) #=> 34567.9
34567.89.round(2) #=> 34567.89
34567.89.round(3) #=> 34567.89
مثال على استعمال التابع round
مع تمرير المعامل half
إليه:
2.5.round(half: :up) #=> 3
2.5.round(half: :down) #=> 2
2.5.round(half: :even) #=> 2
3.5.round(half: :up) #=> 4
3.5.round(half: :down) #=> 3
3.5.round(half: :even) #=> 4
(-2.5).round(half: :up) #=> -3
(-2.5).round(half: :down) #=> -2
(-2.5).round(half: :even) #=> -2
انظر أيضا
- التابع
ceil
: يعيد أصغر عدد من الأعداد الأكبر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة. - التابع
floor
: يعيد أكبر عدد من الأعداد الأصغر من أو تساوي العدد العشري الذي استُدعي معه وبدقة محدَّدة. - التابع
truncate
: يعيد العدد العشري الذي استُدعي معه بعد اقتطاع المنازل العشرية منه بمقدار محدَّد.