Pagini recente » Cod sursa (job #1373872) | Cod sursa (job #2363862) | Cod sursa (job #2241620) | Cod sursa (job #1998871) | Cod sursa (job #2849763)
#include <iostream>
using namespace std;
int a[101], n, k;
void poz(int li, int ls, int &k, int a[]){
int i = li;
int j = ls;
int i1 = 0;
int j1 = -1;
int c;
while(i < j){
if(a[i] > a[j]){
a[i] = a[i]^a[j];
a[j] = a[i]^a[j];
a[i] = a[i]^a[j];
c = i1;
i1 = -j1;
j1 = -c;
}
i += i1;
j += j1;
}
k = i;
}
void quick(int li, int ls){
if(li < ls){
poz(li, ls, k, a);
quick(li, k-1);
quick(k+1, ls);
}
}
int main()
{
scanf("%d", &n);
for(unsigned int i = 1; i <= n; i++){
printf("a[%d]=", i);
scanf("%d", &a[i]);
}
quick(1, n);
for(unsigned int i = 1; i <= n; i++)
printf("%d ", a[i]);
return 0;
}