2 - 2.01?

Hey,
How come 2 - 2.01 = -0.00999999999999979 and not -0.01
???
Can someone explain this to me please?

···

--
Posted via http://www.ruby-forum.com/.

http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/273263

···

On 10/18/07, Michal Sza <nicpon@nicpon.net> wrote:

Hey,
How come 2 - 2.01 = -0.00999999999999979 and not -0.01
???
Can someone explain this to me please?

Michal Sza wrote:

Hey,
How come 2 - 2.01 = -0.00999999999999979 and not -0.01
???
Can someone explain this to me please?

Because 0.01 cannot be represented accurately in binary. See
Floating-point arithmetic - Wikipedia.

···

--
Posted via http://www.ruby-forum.com/\.

--Greg

···

On Thu, Oct 18, 2007 at 09:49:37PM +0900, Michal Sza wrote:

Hey,
How come 2 - 2.01 = -0.00999999999999979 and not -0.01
???
Can someone explain this to me please?

Because you are using floating point.

Reas this article for an explanation:

"What Every Computer Scientist Should Know About Floating-Point Arithmetic"

http://docs.sun.com/source/806-3568/ncg_goldberg.html

  Kristian

···

On Thu, 18 Oct 2007 21:49:37 +0900, Michal Sza <nicpon@nicpon.net> wrote:

Hey,
How come 2 - 2.01 = -0.00999999999999979 and not -0.01
???
Can someone explain this to me please?

This question comes up a lot. Google "floating point errors" for some
good links.

···

On Oct 18, 8:49 am, Michal Sza <nic...@nicpon.net> wrote:

Hey,
How come 2 - 2.01 = -0.00999999999999979 and not -0.01
???
Can someone explain this to me please?
--
Posted viahttp://www.ruby-forum.com/.