title: issue in division with double values
body: <p>why "2=" output is giving surprise results, please throw some light. what is the problem with double in this case.</p>
  
  <p>any constraints for the division of double values.</p>
  
  <p>Are there any options to avoid such things in c++.</p>
  
  <pre><code>#include&lt;iostream.h&gt;
  #include&lt;iomanip.h&gt;
  #include&lt;math.h&gt;
  int main()
  {
      double d1,d2,d3,d4,d5;
  double d = 0.010000;
  
  d1 = 1000000.28;
  d2 = 10000000.28;
  d3 = 100000000.28;
  d4 = 1000000000.28;
  d5 = 10000000000.28;
  
  cout.precision(15);
  
  cout&lt;&lt;"1="&lt;&lt;floor(d1/d)&lt;&lt;endl;
  cout&lt;&lt;"2="&lt;&lt;floor(d2/d)&lt;&lt;endl;
  cout&lt;&lt;"3="&lt;&lt;floor(d3/d)&lt;&lt;endl;
  cout&lt;&lt;"4="&lt;&lt;floor(d4/d)&lt;&lt;endl;
  cout&lt;&lt;"5="&lt;&lt;floor(d5/d)&lt;&lt;endl;
  
  return 0;
    }
  
   o/p
   ====
  1 = 1000000.28;
  2 = 10000000.27;
  3 = 100000000.28;
  4 = 1000000000.28;
  5 = 10000000000.28;
  </code></pre>