Dzień dobry,
napisałem funkcję sortowania szybkiego i chciałbym dodać możliwość kolejności sortowania. Zdaje się, że deklaracje są w porządku, ale "error: a function-definition is not allowed here before ' {' token" chyba mówi, że tak się w ogóle nie da. Pojawiło się również "error: expected '}' at end of input".
Jak mógłbym to poprawnie zadeklarować?
Proszę o pomoc.
void quick(int *tab, unsigned int l, unsigned int r)
{
void quick_r(int *tab, unsigned int l, unsigned int r)
{
int i=l, j=r, p=tab[(l+r)/2];
while(i<j)
{
while(tab[i]<p) i++;
while(tab[j]>p) j--;
if(i<=j)
{
swap(*(tab+i), *(tab+j));
i++;
j--;
}
}
if(l<j) quick(tab, l, j);
if(r>i) quick(tab, i, r);
}
void quick_m(int *tab, unsigned int l, unsigned int r)
{
int i=l, j=r, p=tab[(l+r)/2];
while(i<j)
{
while(tab[i]>p) i++;
while(tab[j]<p) j--;
if(i<=j)
{
swap(*(tab+i), *(tab+j));
i++;
j--;
}
}
if(l<j) quick(tab, l, j);
if(r>i) quick(tab, i, r);
}
char m;
cout << "Wybierz tryb sortowania (0 - rosnacy, 1 - malejacy): "; cin >> m;
if (m=='0') quick_r(tab, l, r);
if (m=='1') quick_m(tab, l, r);
}