Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- void swap_double(double *a, double *b) {
- double t = *a;
- *a = *b;
- *b = t;
- }
- void rearrange(double *arr, int n) {
- int j = 0;
- for (int i = 0; i < n; ++i) {
- if (arr[i] < 0.000001 ) {
- if (i != j)
- swap_double(&arr[i], &arr[j]);
- ++j;
- }
- }
- }
- int main(void)
- {
- double arr[] = { -1/6.0, 2/6.0, -3/6.0, 4/3.0, 5/3.0, 6/3.0, -7/3.0, 8/3.0, 9/3.0 };
- int n = sizeof(arr) / sizeof(arr[0]);
- for (int i = 0; i < n; ++i)
- printf("%.6lf ", arr[i]);
- printf("\n");
- rearrange(arr, n);
- for (int i = 0; i < n; ++i)
- printf("%.6lf ", arr[i]);
- printf("\n");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement