Advertisement
berinkaq

Untitled

Feb 24th, 2021
704
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.68 KB | None | 0 0
  1. #include <stdio.h>
  2.  
  3. void print(double *arr, int n) {
  4.     for (int i = 0; i < n; ++i)
  5.         printf("%.6lf ", arr[i]);
  6.     printf("\n");
  7. }
  8.  
  9. void rearrange(double *arr, int n) {
  10.     double key;
  11.     for (int i = 1, j = 0; i < n; i++) {
  12.         print(arr, n);
  13.         key = arr[i];
  14.         if (key >= 0)
  15.             continue;
  16.         j = i - 1;
  17.         while (j >= 0 && arr[j] >= 0) {
  18.             arr[j + 1] = arr[j];
  19.             j = j - 1;
  20.         }
  21.         arr[j + 1] = key;
  22.  
  23.     }
  24. }
  25.  
  26. int main(void) {
  27.     double arr[] = { -1/6.0, 0.0, -3/6.0, 4/3.0, 5/3.0, 6/3.0, -7/3.0, 8/3.0, 9/3.0 };
  28.     int n = sizeof(arr) / sizeof(arr[0]);
  29.  
  30.    
  31.  
  32.     rearrange(arr, n);
  33.     return 0;
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement