Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re^5: How to use the int-function?

by ruzam (Curate)
on Jan 03, 2011 at 19:30 UTC ( #880245=note: print w/ replies, xml ) Need Help??


in reply to Re^4: How to use the int-function?
in thread How to use the int-function?

If you're going to use printf to round then you have to be aware that it uses the Round half to even method of rounding. I've been bit by that before.

perl -e 'foreach my $i ( 0.5, 1.5, 2.5, 3.5 ) { printf("$i -> %.0f\n", $i) }'
0.5 -> 0 1.5 -> 2 2.5 -> 2 3.5 -> 4

Without resorting to another module to round for you, you probably want use int() something like this (being careful to adjust the rounding value to match your circumstances).

perl -e 'foreach my $i ( 1.155, 1.255, 1.355, 1.455 ) { print $i, " -> " , int($i * 100 + 0.5001)/100 . "\n" }'
1.155 -> 1.16 1.255 -> 1.26 1.355 -> 1.36 1.455 -> 1.46


Comment on Re^5: How to use the int-function?
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://880245]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (8)
As of 2014-10-24 11:22 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (131 votes), past polls