round()
public
Rounds flt to the nearest integer. Equivalent to:
def round
return (self+0.5).floor if self > 0.0
return (self-0.5).ceil if self < 0.0
return 0
end
1.5.round
(-1.5).round
Show source
/*
* call-seq:
* flt.round => integer
*
* Rounds <i>flt</i> to the nearest integer. Equivalent to:
*
* def round
* return (self+0.5).floor if self > 0.0
* return (self-0.5).ceil if self < 0.0
* return 0
* end
*
* 1.5.round
* (-1.5).round
*
*/
static VALUE
flo_round(num)
VALUE num;
{
double f = RFLOAT(num)->value;
long val;
f = round(f);
if (!FIXABLE(f)) {
return rb_dbl2big(f);
}
val = f;
return LONG2FIX(val);
}