floating point in python gives a wrong answer

python, python-3.x

Solution

Floating point arithmetic has built-in problems as it's based on a binary approximation of numbers.

There is a good explanation of this in the Python docs.

You can check out the `decimal` module if you need more exact answers.

Problem

I calculated the following: ``` >>> float(10.0-9.2) 0.800000000000000*7* ``` even doing 10.0-9.2 gave the above result. Why is the extra 7 coming in the result? I'm on python 3.2.

Original source

Related problems