fork download
  1. #include <iostream>
  2.  
  3. int main()
  4. {
  5. double tmp = 1.;
  6. double eps;
  7. int i = 0;
  8. while(tmp != 0) {
  9. ++i;
  10. eps = tmp;
  11. tmp /= 2.;
  12. }
  13. if(eps == 0) {
  14. std::cout << "(1)eps is zero!\n";
  15. }
  16. std::cout << "eps before: " << eps;
  17. if(eps == 0) {
  18. std::cout << "(2)eps is zero!\n";
  19. std::cout << "after " << i << " steps\n";
  20. }
  21. if (eps != 0)
  22. while(eps < 1.) {
  23. tmp = eps;
  24. eps *= 2.;
  25. if(tmp == eps) {
  26. printf("wtf?\n");
  27. }
  28. }
  29.  
  30. std::cout << "eps after: " << eps;
  31. }
  32.  
Success #stdin #stdout 0.02s 2680KB
stdin
Standard input is empty
stdout
eps before: 0(2)eps is zero!
after 16446 steps
eps after: 0