All pastes #886822 Raw Edit

Anonymous

public text v1 · immutable
#886822 ·published 2008-01-31 23:11 UTC
rendered paste body
#include <stdio.h>

void QS(int *tab, int l, int p) 
{ 
   int i,j,v,tmp;
   v=tab[(l+p)/2];
  for(i=l,j=p;i<j;)
   {
   while (tab[i]<v) i++; 
   while (tab[j]>v) j--; 
    if (i<=j) 
    { 
    tmp=tab[i];
    tab[i]=tab[j];
    tab[j]=tmp;
    i++;
    j--;
    }
    }
 if (l<j) QS(tab,l,j);
 if (p>i) QS(tab,i,p);
}

int main()
{
 int a,i,dl,*tab;
 
while ((dl<1)||(dl>15))
{
      printf("Podaj ilosc liczb (max 15): ");
      scanf("%d",&dl);
}

 tab=malloc(dl*sizeof(int));

for (i=0;i<dl;i++)
{
     printf("Podaj %d. liczbe: ",i+1);
      scanf("%d",&a);
     tab[i]=a;  
};

system("cls");

     printf("Podane liczby przed segregacja: ");
for (i=0;i<dl;i++)
{
     printf("\n%d",tab[i]);  
};

QS(tab,0,dl-1);

     printf("\n\nPodane liczby po segregacji: ");
for (i=0;i<dl;i++)
{
     printf("\n%d",tab[i]); 
};

getch();
free(tab);
 return 0;   
}