Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <math.h>
- #include <limits.h>
- #include <iostream>
- #include <time.h>
- using namespace std;
- timespec diff(timespec start, timespec end)
- {
- timespec temp;
- if ((end.tv_nsec - start.tv_nsec) < 0)
- {
- temp.tv_sec = end.tv_sec - start.tv_sec - 1;
- temp.tv_nsec = 1000000000 + end.tv_nsec - start.tv_nsec;
- }
- else
- {
- temp.tv_sec = end.tv_sec - start.tv_sec;
- temp.tv_nsec = end.tv_nsec - start.tv_nsec;
- }
- return temp;
- }
- int main(void)
- {
- timespec start, end;
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &start);
- double sum = 0;
- double m = 0.0;
- for (int n = 1; n < INT_MAX; ++n)
- {
- m = n * 10.1;
- sum += log(m);
- }
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &end);
- cout << "ln=";
- cout << diff(start, end).tv_sec << ":" << diff(start, end).tv_nsec << endl;
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &start);
- sum = 0, m = 0.0;
- for (int n = 1; n < INT_MAX; ++n)
- {
- m = n * 10.1;
- sum += log2(m);
- }
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &end);
- cout << "lb=";
- cout << diff(start, end).tv_sec << ":" << diff(start, end).tv_nsec << endl;
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &start);
- sum = 0, m = 0.0;
- for (int n = 1; n < INT_MAX; ++n)
- {
- m = n * 10.1;
- sum += log10(n);
- }
- clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &end);
- cout << "lg=";
- cout << diff(start, end).tv_sec << ":" << diff(start, end).tv_nsec << endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement