While this method is quite slick, it won't work as expected with numbers that are of the form 0.5, as it will always round up to the next number instead of rounding to the nearest even number (a rule which tries to make sure that most rounding errors cancel each other).

Update: nuance has updated the above post, so this post has become meaningless ;).

Here is an example for a case when always rounding up and using the results in further calculation. Adam calls this "premature rounding", but I think there are valid cases to do this, for example when doing accounting or printing invoices. In this example, using the rounded values in further calculations increases the error introduced by rounding :
Consider (for simplicity) 2.5 * 3.5 :
MethodResultError
exact8.750
round up12.003.25
round to nearest even number8.000.75
In this (extreme) example, the rounding errors don't cancel each other out when always rounding up. There are also cases where rounding up and rounding to the nearest even number give the same rounding error (consider 3.5 * 1.5).

And by the way, I'm not pedantic, I'm just trying to be accurate :)


In reply to RE: RE: Methods to format a number by Corion
in thread Numbers.... by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.