Advertisement
pexea12

Optimized (b) version

Feb 9th, 2020
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.77 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <time.h>
  3.  
  4. #define N 3000
  5.  
  6.  
  7. int main()
  8. {
  9.   double a[N][N], b[N][N], c[N];
  10.   clock_t start, end;
  11.  
  12.  
  13.   for (int i = 0; i < N; ++i) {
  14.     c[i] = i + 0.1;
  15.     for (int j = 0; j < N; ++j) b[i][j] = i * 2.0 + j;
  16.   }
  17.  
  18.   start = clock();
  19.   for (int i = 0; i < N; i += 2) {
  20.     for (int j = 0; j < N; j += 2) {
  21.       a[i][j] = b[i][j] / c[i];
  22.       a[i][j + 1] = b[i][j + 1] / c[i];
  23.       a[i + 1][j] = b[i + 1][j] / c[i + 1];
  24.       a[i + 1][j + 1] = b[i + 1][j + 1] / c[i + 1];
  25.     }
  26.   }
  27.  
  28.   end = clock();
  29.  
  30.   for (int i = 0; i < 20; ++i)
  31.     for (int j = 0; j < 20; ++j)
  32.       printf("%f\n", a[i][j]);
  33.  
  34.   double cpu_time_used = ((double) (end - start)) / CLOCKS_PER_SEC;
  35.   printf("Elapsed time: %f\n", cpu_time_used);
  36.  
  37.   return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement