FAQ Topic - Why does simple decimal arithmetic give strange results? (2008-06-21)

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • FAQ server

    FAQ Topic - Why does simple decimal arithmetic give strange results? (2008-06-21)

    -----------------------------------------------------------------------
    FAQ Topic - Why does simple decimal arithmetic give strange
    results?
    -----------------------------------------------------------------------

    For example, 5*1.015 does not give exactly 5.075 and 0.06+0.01 does
    not give exactly 0.07 in javascript.

    Javascript numbers are represented in binary as IEEE-754 (IEC 559)
    Doubles, with a resolution of 53 bits, giving an accuracy of
    15-16 decimal digits; integers up to about 9e15 are precise, but
    few decimal fractions are. Given this, arithmetic is as exact
    as possible, but no more. Operations on integers are exact if
    the true result and all intermediates are integers within that
    range.

    In particular, non-integer results should not normally be
    compared for equality; and non-integer computed results
    commonly need rounding; see 4.6.





    Otherwise, use Math.round on the results of expressions which
    should be of integer value.


    --
    Postings such as this are automatically sent once a day. Their
    goal is to answer repeated questions, and to offer the content to
    the community for continuous evaluation/improvement. The complete
    comp.lang.javas cript FAQ is at http://jibbering.com/faq/index.html.
    The FAQ workers are a group of volunteers. The sendings of these
    daily posts are proficiently hosted by http://www.pair.com.

  • Dr J R Stockton

    #2
    Re: FAQ Topic - Why does simple decimal arithmetic give strange results? (2008-06-21)

    In comp.lang.javas cript message <485c3675$0$902 73$14726298@new s.sunsite.
    dk>, Fri, 20 Jun 2008 23:00:02, FAQ server <javascript@dot internet.be>
    posted:
    The FAQ workers are a group of volunteers.
    That needs to be changed. At present they are effectively an empty set.

    --
    (c) John Stockton, nr London, UK. ?@merlyn.demon. co.uk Turnpike v6.05.
    Web <URL:http://www.merlyn.demo n.co.uk/- w. FAQish topics, links, acronyms
    PAS EXE etc : <URL:http://www.merlyn.demo n.co.uk/programs/- see 00index.htm
    Dates - miscdate.htm moredate.htm js-dates.htm pas-time.htm critdate.htm etc.

    Comment

    Working...