#include <omp.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int main()
{
int i, n, tmp, *x, changes;
int chunk;
scanf("%d ", &n);
chunk = n / 4;
x = (int*)malloc(n * sizeof(int));
for (i = 0; i < n; ++i)
scanf("%d ", &x);
changes = 1;
int nr = 0;
while (changes)
{
#pragma omp parallel private(tmp)
{
nr++;
changes = 0;
#pragma omp for reduction(+:changes)
for (i = 0; i < n - 1; i = i + 2)
{
if (x> x[i + 1])
{
tmp = x;
x= x[i + 1];
x[i + 1] = tmp;
++changes;
}
}
#pragma omp for reduction(+:changes)
for (i = 1; i < n - 1; i = i + 2)
{
if (x> x[i + 1])
{
tmp = x;
x= x[i + 1];
x[i + 1] = tmp;
++changes;
}
}
}
}
return 0;
}
Arkadaşlar kodu çalıştıyorum fakat herhangi bir işlem gerçekleştirmiyor. Console ekrarında boş boş bekliyor. Yardımcı olur musunuz ?