sub round { my($number) = shift; return int($number + .5); }
perldoc -f int
int Returns the integer portion of EXPR. If EXPR is omitted, uses "$_". You should not use this function for rounding: one because it truncates towards "0", and two because machine representations of floating point numbers can sometimes produce counterintuitive results. For example, "int(-6.725/0.025)" produces -268 rather than the correct -269; that's because it's really more like -268.99999999999994315658 instead. Usually, the "sprintf", "printf", or the "POSIX::floor" and "POSIX::ceil" functions will serve you better than will int().
In reply to Re: Re: OT: Integer rounding?
by flyingmoose
in thread OT: Integer rounding?
by Ryszard
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |