title: Is double Multiplication Broken in .NET?
body: <p>If I execute the following expression in C#:</p>
  
  <pre><code>double i = 10*0.69;
  </code></pre>
  
  <p><code>i</code> is: <code>6.8999999999999995</code>. Why? </p>
  
  <p>I understand numbers such as 1/3 can be hard to represent in binary as it has infinite recurring decimal places but this is not the case for 0.69. And 0.69 can easily be represented in binary, one binary number for 69 and another to denote the position of the decimal place.</p>
  
  <p>How do I work around this? Use the <code>decimal</code> type?</p>