rational.c: improves Rational#round rdoc [ci skip]

* rational.c (nurat_round_n): [DOC] improves Integer#round
  documentation as well as Float#round.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2017-04-01 22:48:01 +00:00
parent 42166c6266
commit 80e1990259

View File

@ -1510,11 +1510,12 @@ nurat_truncate_n(int argc, VALUE *argv, VALUE self)
/* /*
* call-seq: * call-seq:
* rat.round -> integer * rat.round([ndigits] [, half: symbol]) -> integer or rational
* rat.round(precision=0) -> integer or rational
* *
* Returns the truncated value (toward the nearest integer; * Rounds +rat+ to a given precision in decimal digits (default 0 digits).
* 0.5 => 1; -0.5 => -1). *
* Precision may be negative. Returns a rational when +ndigits+
* is more than zero.
* *
* Rational(3).round #=> 3 * Rational(3).round #=> 3
* Rational(2, 3).round #=> 1 * Rational(2, 3).round #=> 1
@ -1526,6 +1527,15 @@ nurat_truncate_n(int argc, VALUE *argv, VALUE self)
* *
* Rational('-123.456').round(+1).to_f #=> -123.5 * Rational('-123.456').round(+1).to_f #=> -123.5
* Rational('-123.456').round(-1) #=> -120 * Rational('-123.456').round(-1) #=> -120
*
* The <code>half:</code> optional keyword same as Float#round is available.
*
* Rational(25, 100).round(1, half: :up) #=> (3/10)
* Rational(25, 100).round(1, half: :even) #=> (1/5)
* Rational(25, 100).round(1, half: :down) #=> (1/5)
* Rational(35, 100).round(1, half: :up) #=> (2/5)
* Rational(35, 100).round(1, half: :even) #=> (2/5)
* Rational(35, 100).round(1, half: :down) #=> (3/10)
*/ */
static VALUE static VALUE
nurat_round_n(int argc, VALUE *argv, VALUE self) nurat_round_n(int argc, VALUE *argv, VALUE self)