#import <math.h>
int n = 10;
int i = 0, j = 0;
double arr[10];
int main() {
resetArr();
prArr();
function1();
prArr();
resetArr();
function2();
prArr();
}
void prArr() {
printf(">>> ");
for(i=0;i<n;i++) {
printf("%G ",arr[i]);
}
printf("\n\n");
}
void resetArr() {
for(i=0;i<n;i++) {
arr[i] = i;
}
}
void function1() {
for(i=0; i<n; i++) {
for (j=(i+1); j<n; j++) {
double d = arr[i] - arr[j];
double sqr = d * d + 0.01;
double dist = sqrt(sqr);
double mag = 1 / (sqr * dist);
arr[i] -= d * arr[j] * mag;
arr[j] += d * arr[i] * mag;
}
}
}
void function2() {
for (i=0; i<n; i++) {
for (j=0; j<n; j++) {
if (i != j) {
double d = arr[i] - arr[j];
double sqr = d * d + 0.01;
double dist = sqrt(sqr);
double mag = 1 / (sqr * dist);
arr[i] -= d * arr[j] * mag;
}
}
}
}