#include #include #include #include #include // provides clock() which returns # of system clock ticks since program started. // also provides clock_t (the return value for the clock function) using namespace std; void main() { multiset multiple_timings; set unique_timings; clock_t now, stop; srand(time(0)); stop = clock() + rand()%1000; // iterate for a random number of clock ticks < 100000 int i; do { multiple_timings.insert(clock()); for (i = rand()%10; i; i--) ; // cause a random length delay unique_timings.insert(clock()); for (i = rand()%10; i; i--) ; // cause a random length delay now = clock(); } while (now < stop); if (includes(multiple_timings.begin(), multiple_timings.end(), unique_timings.begin(), unique_timings.end())) { cout << "All unique timing results were also among the multiple timing results." << endl; } else { set result; set_difference(multiple_timings.begin(), multiple_timings.end(), unique_timings.begin(), unique_timings.end(), inserter(result, result.begin())); cout << "Difference between the two sets (unique values only): " << endl; copy(result.begin(), result.end(), ostream_iterator(cout, "\t")); } }