title: Can a near-zero floating value cause a divide-by-zero error?
body: <p>Everybody knows you're not supposed to compare floats directly, but rather using a tolerance:</p>
  
  <pre><code>float a,b;
  float epsilon = 1e-6f;
  bool equal = (fabs(a-b) &lt; epsilon);
  </code></pre>
  
  <p>I was wondering if the same applies to comparing a value to zero before using it in division.</p>
  
  <pre><code>float a, b;
  if (a != 0.0f) b = 1/a; // oops?
  </code></pre>
  
  <p>Do I also need to compare with epsilon in this case?</p>