Ruby/Справочник/Float: различия между версиями

Содержимое удалено Содержимое добавлено
м орфография
м <source> -> <syntaxhighlight> (phab:T237267)
 
Строка 20:
===Float::induced_from===
----
<sourcesyntaxhighlight lang=ruby>Float.induced_from(obj) #-> float</sourcesyntaxhighlight>
----
Преобразует ''obj'' в вещественное число.
===Float#%===
----
<sourcesyntaxhighlight lang=ruby>flt % other #-> float
flt.modulo(other) #-> float</sourcesyntaxhighlight>
----
Возвращает остаток от деления числа ''flt'' на число ''other''.
<sourcesyntaxhighlight lang=ruby>6543.21 % 137 #-> 104.21
6543.21 % 137.24 #-> 92.9299999999996</sourcesyntaxhighlight>
{{Идентичные методы|Float|%|modulo}}
===Float#*===
----
<sourcesyntaxhighlight lang=ruby>flt * other #-> float</sourcesyntaxhighlight>
----
Возвращает вещественное число, которое является результатом произведения ''flt'' на ''other''.
Строка 40:
===Float#**===
----
<sourcesyntaxhighlight lang=ruby>flt ** other #-> float</sourcesyntaxhighlight>
----
Возвращает вещественное число, которое является результатом возведения числа ''flt'' в степень ''other''.
Строка 46:
===Float#+===
----
<sourcesyntaxhighlight lang=ruby>flt + other #-> float</sourcesyntaxhighlight>
----
Возвращает вещественное число, которое является суммой чисел ''flt'' и ''other''.
Строка 52:
===Float#-===
----
<sourcesyntaxhighlight lang=ruby>flt - other #-> float</sourcesyntaxhighlight>
----
Возвращает вещественное число, которое является разностью чисел ''flt'' и ''other''.
Строка 58:
===Float#-@===
----
<sourcesyntaxhighlight lang=ruby>-flt #-> float</sourcesyntaxhighlight>
----
Возвращает вещественное число, обратное по знаку (по отношению к ''flt'').
===Float#/===
----
<sourcesyntaxhighlight lang=ruby>float / other #-> float</sourcesyntaxhighlight>
----
Возвращает вещественное число, которое является частным чисел ''flt'' и ''other''.
Строка 69:
===Float#<===
----
<sourcesyntaxhighlight lang=ruby>flt < other #-> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если число ''flt'' меньше, чем число ''other''.
===Float#<====
----
<sourcesyntaxhighlight lang=ruby>flt <= other #-> true or false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если число ''flt'' меньше или равно по отношению к числу ''other''.
===Float#<=>===
----
<sourcesyntaxhighlight lang=ruby>flt <=> numeric #-> -1, 0, +1</sourcesyntaxhighlight>
----
Возвращает -1, 0 или +1, когда число ''flt'' меньше, равно или больше числа ''numeric'', соответственно. Этот метод необходим для нормальной работы примеси [[Ruby/Справочник/Comparable|Comparable]].
===Float#=====
----
<sourcesyntaxhighlight lang=ruby>flt == obj #-> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt> только если число ''obj'' имеет точно такое же значение, как и число ''flt''. В отличие от метода [[#Float#eql?|eql?]], преобразует ''obj'' в вещественное число.
<sourcesyntaxhighlight lang=ruby>1.0 == 1 #-> true</sourcesyntaxhighlight>
===Float#>===
----
<sourcesyntaxhighlight lang=ruby>flt > other #-> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если число ''flt'' больше, чем число ''other''.
===Float#>====
----
<sourcesyntaxhighlight lang=ruby>flt >= other #-> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если число ''flt'' больше или равно по отношению к числу ''other''.
===Float#abs===
----
<sourcesyntaxhighlight lang=ruby>flt.abs #-> float</sourcesyntaxhighlight>
----
Возвращает [[w:Абсолютная величина|абсолютную величину]] числа ''flt''.
<sourcesyntaxhighlight lang=ruby>(-34.56).abs #-> 34.56
-34.56.abs #-> 34.56</sourcesyntaxhighlight>
===Float#ceil===
----
<sourcesyntaxhighlight lang=ruby>flt.ceil #-> integer</sourcesyntaxhighlight>
----
Возвращает наименьшее [[Ruby/Справочник/Integer|целое число]] большее или равное числу ''flt''.
<sourcesyntaxhighlight lang=ruby>1.2.ceil #-> 2
2.0.ceil #-> 2
(-1.2).ceil #-> -1
(-2.0).ceil #-> -2</sourcesyntaxhighlight>
{{Похожие методы|Float|floor|round|truncate}}
===Float#coerce===
----
<sourcesyntaxhighlight lang=ruby>flt.coerce(other) #-> array</sourcesyntaxhighlight>
----
Возвращает массив, состоящий из чисел ''other'' и ''flt'', которые преобразованы к вещественному типу. Этот метод используется при обработке арифметических операций со смешанными типами.
<sourcesyntaxhighlight lang=ruby>1.2.coerce(3) #-> [3.0, 1.2]
1.0.coerce(2.0) #-> [2.0, 1.0]</sourcesyntaxhighlight>
===Float#divmod===
----
<sourcesyntaxhighlight lang=ruby>flt.divmod(numeric) #-> array</sourcesyntaxhighlight>
----
См. описание метода [[Ruby/Справочник/Numeric#Numeric#divmod|Numeric#divmod]].
===Float#eql?===
----
<sourcesyntaxhighlight lang=ruby>flt.eql?(obj) #-> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если ''obj'' является вещественным числом и имеет значение равное ''flt''. В отличие от метода [[#Float#==|==]], преобразований типов не производится.
<sourcesyntaxhighlight lang=ruby>1.0.eql?(1) #-> false</sourcesyntaxhighlight>
===Float#finite?===
----
<sourcesyntaxhighlight lang=ruby>flt.finite? #-> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если ''flt'' является правильным вещественным числом по стандартам [[w:Институт инженеров электротехники и электроники|IEEE]] (то есть не является [[w:Бесконечность|бесконечностью]] и метод [[#Float#nan|nan?]] возвращает <tt>false</tt>).
===Float#floor===
----
<sourcesyntaxhighlight lang=ruby>flt.floor #-> integer</sourcesyntaxhighlight>
----
Возвращает наибольшее целое, меньшее или равное ''flt''.
<sourcesyntaxhighlight lang=ruby>1.2.floor #-> 1
2.0.floor #-> 2
(-1.2).floor #-> -2
(-2.0).floor #-> -2</sourcesyntaxhighlight>
{{Похожие методы|Float|ceil|round|truncate}}
===Float#hash===
----
<sourcesyntaxhighlight lang=ruby>flt.hash #-> integer</sourcesyntaxhighlight>
----
Возвращает [[w:Хеширование|хеш-код]] вещественного числа ''flt''.
===Float#infinite?===
----
<sourcesyntaxhighlight lang=ruby>flt.infinite? #-> nil, -1, +1</sourcesyntaxhighlight>
----
Возвращает <tt>nil</tt>, -1 или +1, если вещественное число ''flt'' конечно, устремлено в <math>+\infty</math> или в <math>-\infty</math>, соответственно.
<sourcesyntaxhighlight lang=ruby>(0.0).infinite? #-> nil
(-1.0/0.0).infinite? #-> -1
(+1.0/0.0).infinite? #-> 1</sourcesyntaxhighlight>
===Float#modulo===
----
<sourcesyntaxhighlight lang=ruby>flt % other #-> float
flt.modulo(other) #-> float</sourcesyntaxhighlight>
----
Возвращает остаток от деления числа ''flt'' на число ''other''.
<sourcesyntaxhighlight lang=ruby>6543.21.modulo(137) #-> 104.21
6543.21.modulo(137.24) #-> 92.9299999999996</sourcesyntaxhighlight>
===Float#nan?===
----
<sourcesyntaxhighlight lang=ruby>flt.nan? -> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если число ''flt'' не удовлетворяет стандарту [[w:Институт инженеров электротехники и электроники|IEEE]] на вещественные числа.
<sourcesyntaxhighlight lang=ruby>a = -1.0 #-> -1.0
a.nan? #-> false
a = 0.0/0.0 #-> NaN
a.nan? #-> true</sourcesyntaxhighlight>
===Float#round===
----
<sourcesyntaxhighlight lang=ruby>flt.round #-> integer</sourcesyntaxhighlight>
----
Возвращает ближайшее целое число к вещественному числу ''flt''. Метод эквивалентен следующей записи:
<sourcesyntaxhighlight lang=ruby>def round
return floor(self+0.5) if self > 0.0
return ceil(self-0.5) if self < 0.0
Строка 190:
 
1.5.round #-> 2
(-1.5).round #-> -2</sourcesyntaxhighlight>
{{Похожие методы|Float|floor|ceil|truncate}}
===Float#to_f===
----
<sourcesyntaxhighlight lang=ruby>flt.to_f #-> flt</sourcesyntaxhighlight>
----
Так как ''flt'' уже является вещественным числом, то данный метод всегда возвращает ''ftl''.
Строка 200:
===Float#to_i===
----
<sourcesyntaxhighlight lang=ruby>flt.to_i #-> integer
flt.to_int #-> integer
flt.truncate #-> integer</sourcesyntaxhighlight>
----
Возвращает целое число, которое является целой частью вещественного числа ''flt''.
Строка 208:
===Float#to_int===
----
<sourcesyntaxhighlight lang=ruby>flt.to_i #-> integer
flt.to_int #-> integer
flt.truncate #-> integer</sourcesyntaxhighlight>
----
Возвращает целое число, которое является целой частью вещественного числа ''flt''.
Строка 216:
===Float#to_s===
----
<sourcesyntaxhighlight lang=ruby>flt.to_s #-> string</sourcesyntaxhighlight>
----
Возвращает строку, которая содержит строковое представление вещественного числа ''flt''. Число ''flt'' может быть представлено как в обычной, так и в экспоненциальной форме записи, а также иметь значения <tt>NaN</tt>, <tt>Infinity</tt>, <tt>-Infinity</tt>.
===Float#truncate===
----
<sourcesyntaxhighlight lang=ruby>flt.to_i #-> integer
flt.to_int #-> integer
flt.truncate #-> integer</sourcesyntaxhighlight>
----
Возвращает целое число, которое является целой частью вещественного числа ''flt''.
Строка 230:
===Float#zero?===
----
<sourcesyntaxhighlight lang=ruby>flt.zero? -> true или false</sourcesyntaxhighlight>
----
Возвращает <tt>true</tt>, если вещественное число ''flt'' является числом 0.0.