#include <iostream>
#include <cmath>
#include <limits> 

bool AreDoubleSame(double dFirstVal, double dSecondVal)
{
    return std::abs(dFirstVal - dSecondVal) < std::numeric_limits<double>::epsilon();
}


int main()
{
  double dFirstDouble = 0.200001;
  double dSecondDouble = 20000.1 / 100000.0;

  std::cout << "AreDoubleSame: ";
  if(AreDoubleSame(dFirstDouble , dSecondDouble) )
  {
    std::cout << "equal " << std::endl;
  } else {
    std::cout << "not equal" << std::endl;
  }
  std::cout << "==: ";
  if(dFirstDouble == dSecondDouble)
  {
    std::cout << "equal " << std::endl;
  } else {
    std::cout << "not equal" << std::endl;
  }
}