round(ndigits = 0) -> Integer | Float
[permalink][rdoc][edit]round(ndigits = 0, half: :up) -> Integer | Float
-
自身ともっとも近い整数もしくは実数を返します。
中央値 0.5, -0.5 はそれぞれ 1,-1 に切り上げされます。いわゆる四捨五入ですが、偶数丸めではありません。
- [PARAM] ndigits:
- 丸める位を指定します。 ndigitsが0ならば、小数点以下を四捨五入し、整数を返します。 ndigitsが0より大きいならば、小数点以下の指定された位で四捨五入されます。 ndigitsが0より小さいならば、小数点以上の指定された位で四捨五入されます。
- [PARAM] half:
- ちょうど半分の値の丸め方を指定します。サポートされている値は以下の通りです。
- :up or nil: 0から遠い方に丸められます。
- :even: もっとも近い偶数に丸められます。
- :down: 0に近い方に丸められます。
- [RETURN]
- 指定された引数に応じて、整数もしくは実数を返します。 ndigitsが0ならば、整数を返します。 ndigitsが0より大きいならば、実数を返します。 ndigitsが0より小さいならば、整数を返します。
- [EXCEPTION] TypeError:
- ndigits で指定されたオブジェクトが整数に変換できない場合発生します。
1.0.round # => 1 1.2.round # => 1 (-1.2).round # => -1 (-1.5).round # => -2 t = Math::PI # => 3.141592653589793 t.round(3) # => 3.142 t.round(0) # => 3 t.round(1) # => 3.1 t = t**10 # => 93648.04747608298 t.round(-0) # => 93648 t.round(-1) # => 93650 t.round(-2) # => 93600 t.round(-3) # => 94000 t.round(-100) # => 0 2.5.round(half: :up) # => 3 2.5.round(half: :even) # => 2 2.5.round(half: :down) # => 2 3.5.round(half: :up) # => 4 3.5.round(half: :even) # => 4 3.5.round(half: :down) # => 3
[SEE_ALSO] Float#ceil, Float#floor, Float#truncate