When executing an operation such as 1.1 * 1.1 using double we get 1.21000...0002 instead of 1.21. In the application we are building is really important to obtain 1.21 in such operation.
To solve it we could simply change from double to decimal just to execute the operation, however we also use double.NaN, double.PositiveInfinity and double.NegativeInfinity, which don't exist in decimal.
How can we fix the precision?