fork download
  1. #include <iostream>
  2. #include <ctime>
  3. #include <cmath>
  4. #include <cfloat>
  5.  
  6. const int num_tests = 200000000;
  7.  
  8. int main() {
  9. double r=0.0;
  10. clock_t start = clock();
  11. for(int i=0; i<num_tests; ++i)
  12. r += i;
  13. clock_t end = clock();
  14. std::cout << r << " empty loop took " << double(end-start)/CLOCKS_PER_SEC << "s\n";
  15.  
  16. r=0;
  17. start = clock();
  18. for(int i=0; i<num_tests; ++i)
  19. r += i*double(FLT_RADIX);
  20. end = clock();
  21. std::cout << r << " multiplication loop took " << double(end-start)/CLOCKS_PER_SEC << "s\n";
  22.  
  23. r=0;
  24. start = clock();
  25. for(int i=0; i<num_tests; ++i)
  26. r += scalbln(i, 1);
  27. end = clock();
  28. std::cout << r << " scalbln loop took " << double(end-start)/CLOCKS_PER_SEC << "s\n";
  29.  
  30. return 0;
  31. }
Success #stdin #stdout 2.06s 2680KB
stdin
Standard input is empty
stdout
2e+16 empty loop took 0.37s
4e+16 multiplication loop took 0.36s
4e+16 scalbln loop took 1.32s