Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Floatクラス
class Float
クラスの継承リスト: Float < Numeric < Comparable < Object < Kernel < BasicObject
Abstract
浮動小数点数のクラス。Float の実装は C 言語の double で、その精度は環 境に依存します。
一般にはせいぜい15桁です。詳しくは多くのシステムで採用されている 浮動小数点標準規格、IEEE (Institute of Electrical and Electronics Engineers: 米国電気電子技術者協会) 754 を参照してください。
# あるシステムでの 1/3(=0.333...) の結果 printf("%.50f\n", 1.0/3) => 0.33333333333333331482961625624739099293947219848633
インスタンスメソッド
self % other -> Float
modulo(other) -> Float
-
算術演算子。剰余を計算します。
- [PARAM] other:
- 二項演算の右側の引数(対象)
# 剰余 p 3 % 1.2 #=> 0.6 p 3.0 % 0 #=> NaN
self * other -> Float
-
算術演算子。積を計算します。
- [PARAM] other:
- 二項演算の右側の引数(対象)
# 積 p 2.4 * 3 #=> 7.2
self ** other -> Float
-
算術演算子。冪を計算します。
- [PARAM] other:
- 二項演算の右側の引数(対象)
# 冪 p 1.2 ** 3.0 #=> 1.728 p 3.0 + 4.5 - 1.3 / 2.4 * 3 % 1.2 ** 3.0 #=> 5.875
self + other -> Float
-
算術演算子。和を計算します。
- [PARAM] other:
- 二項演算の右側の引数(対象)
# 和 p 3.0 + 4.5 #=> 7.5
self - other -> Float
-
算術演算子。差を計算します。
- [PARAM] other:
- 二項演算の右側の引数(対象)
# 差 p 4.5 - 1.3 #=> 3.2
self / other -> Float
-
算術演算子。商を計算します。
- [PARAM] other:
- 二項演算の右側の引数(対象)
# 商 p 1.3 / 2.4 #=> 0.541666666666667 p 1.0 / 0 #=> Infinity
self < other -> bool
-
比較演算子。数値として小さいか判定します。
- [PARAM] other:
- 比較対象の数値
- [RETURN]
- self よりも other が大きい場合 true を返します。 そうでなければ false を返します。
例:
p 3.14 < 3.1415 #=> true p 3.14 <= 3.1415 #=> true
self <= other -> bool
-
比較演算子。数値として等しいまたは小さいか判定します。
- [PARAM] other:
- 比較対象の数値
- [RETURN]
- self よりも other の方が大きい場合か、 両者が等しい場合 true を返します。 そうでなければ false を返します。
例:
p 3.14 < 3.1415 #=> true p 3.14 <= 3.1415 #=> true
self <=> other -> nil | 1 | 0 | -1
-
self と other を比較して、self が大きい時に正、 等しい時に 0、小さい時に負の整数を返します。 比較できない場合はnilを返します
例:
p 3.05 <=> 3.14 #=> -1 p 1.732 <=> 1.414 #=> 1 p 3.3 - 3.3 <=> 0.0 #=> 0 p 3.14 <=> "hoge" #=> nil p 3.14 <=> 0.0/0.0 #=> nil
self == other -> bool
-
比較演算子。数値として等しいか判定します。
ただし、NaN 同士の比較では常に false を返します。
- [PARAM] other:
- 比較対象の数値
- [RETURN]
- self と other が等しい場合 true を返します。 そうでなければ false を返します。
例:
p 3.14 == 3.14000 #=> true p 3.14 == 3.1415 #=> false # NaN 同士では常に false nan = 0.0/0 p nan == nan # => false
self > other -> bool
-
比較演算子。数値として大きいか判定します。
- [PARAM] other:
- 比較対象の数値
- [RETURN]
- self よりも other の方が小さい場合 true を返します。 そうでなければ false を返します。
例:
p 3.14 > 3.1415 #=> false p 3.14 >= 3.1415 #=> false
self >= other -> bool
-
比較演算子。数値として等しいまたは大きいか判定します。
- [PARAM] other:
- 比較対象の数値
- [RETURN]
- self よりも other の方が小さい場合か、 両者が等しい場合 true を返します。 そうでなければ false を返します。
例:
p 3.14 > 3.1415 #=> false p 3.14 >= 3.1415 #=> false
abs -> Float
-
自身の絶対値を返します。
例:
p 34.56.abs #=> 34.56 p -34.56.abs #=> 34.56
ceil -> Integer
-
自身と等しいかより大きな整数のうち最小のものを返します。
例:
1.0.ceil #=> 1 1.2.ceil #=> 2 (-1.2).ceil #=> -1 (-1.5).ceil #=> -1
[SEE_ALSO] Float#floor, Float#round, Float#truncate
divmod(other) -> [Numeric]
-
self を other で割った商 q と余り r を、 [q, r] という 2 要素の配列にして返します。 商 q は常に整数ですが、余り r は整数であるとは限りません。
ここで、商 q と余り r は、
- self == other * q + r
と
- other > 0 のとき: 0 <= r < other
- other < 0 のとき: other < r <= 0
- q は整数
をみたす数です。 このメソッドは、メソッド / と % によって定義されています。
- [PARAM] other:
- 自身を割る数を指定します。
例:
11.divmod(3) #=> [3, 2] (11.5).divmod(3.5) #=> [3, 1.0] 11.divmod(-3) #=> [-4, -1] 11.divmod(3.5) #=> [3, 0.5] (-11).divmod(3.5) #=> [-4, 3.0]
[SEE_ALSO] Numeric#div, Numeric#modulo
eql?(other) -> bool
-
自身と other のクラスが等しくかつ == メソッドで比較して等しい場合に true を返します。 そうでない場合に false を返します。
- [PARAM] other:
- 自身と比較したい数値を指定します。
例:
1.0.eql?(1) #=> false 1.0.eql?(1.0) #=> true
finite? -> bool
-
数値が ∞, -∞, あるいは NaN でない場合に true を返します。 そうでない場合に false を返します。
例:
p 3.14.finite? #=> true inf = 1.0/0 p inf.finite? #=> false
floor -> Integer
-
自身と等しいかより小さな整数のうち最大のものを返します。
例:
1.0.floor #=> 1 1.2.floor #=> 1 (-1.2).floor #=> -2 (-1.5).floor #=> -2
[SEE_ALSO] Numeric#ceil, Numeric#round, Float#truncate
hash -> Fixnum
-
ハッシュ値を返します。
例:
pi1 = 3.14 pi2 = 3.14 pi3 = 3.1415 p pi1.hash #=> 335364239 p pi2.hash #=> 335364239 p pi3.hash #=> 420540030
infinite? -> 1 | -1 | nil
-
数値が +∞ のとき 1、-∞のとき -1 を返します。それ以外は nil を返 します。
例:
inf = 1.0/0 p inf p inf.infinite? => Infinity 1 inf = -1.0/0 p inf p inf.infinite? => -Infinity -1
nan? -> bool
-
数値が NaN(Not a number)のとき真を返します。
例:
nan = 0.0/0.0 p nan p nan.nan? => NaN true
round -> Fixnum
-
自身ともっとも近い整数を返します。
中央値 0.5, -0.5 はそれぞれ 1,-1 に切り上げされます。 いわゆる四捨五入ですが、偶数丸めではありません。
例:
1.0.round #=> 1 1.2.round #=> 1 (-1.2).round #=> -1 (-1.5).round #=> -2
[SEE_ALSO] Float#ceil, Float#floor, Float#truncate
to_f -> self
-
self を返します。
例:
p 3.14.to_f #=> 3.14
to_i -> Integer
truncate -> Integer
-
小数点以下を切り捨てて値を整数に変換します。
例:
p 3.14.to_i #=> 3
[SEE_ALSO] Numeric#round, Numeric#ceil, Numeric#floor
zero? -> bool
-
自身がゼロの時、真を返します。そうでない場合は false を返します。
例:
p 10.0.zero? #=> false p 0.zero? #=> true p 0.0.zero? #=> true
定数
DIG
-
Float が表現できる最大の 10 進桁数
EPSILON
-
1.0 + Float::EPSILON != 1.0 となる最小の値
MANT_DIG
-
仮数部の Float::RADIX 進法での桁数
MAX
-
Float が取り得る最大値
MAX_10_EXP
-
最大の 10 進の指数
MAX_EXP
-
最大の Float::RADIX 進の指数
MIN
-
Float が取り得る最小値
MIN_10_EXP
-
最小の 10 進の指数
MIN_EXP
-
最小の Float::RADIX 進の指数
RADIX
-
指数表現の基数
ROUNDS
-
丸めモード (-1: 不定、0: 0.0 の方向に丸め、1: 四捨五入、2:正の無限 大の方向に丸め、3:負の無限大の方向に丸め)
追加されるメソッド
to_d
[added by bigdecimal/util]-
BigDecimalに変換する