# The Issue with Floating Point

In a python REPL environment, we would see the following:

 1 2 3 >>> x = 0.1 >>> format(x, '.32f') '0.10000000000000000555111512312578' 

That is x is not actually stored as 0.1. This is because $$\dfrac{1}{10}$$ cannot be represented as a finite combination of these:

$\dfrac{a_1}{2} + \dfrac{a_2}{2^2} + \dfrac{a_3}{2^3} + \cdots .$

In other words, there is no corresponding binary fraction for 0.1.

Which of the following can be expressed without any error as a floating point?

×