Sortowanie przez wstawianie

#include<iostream>
#include<time.h>
#include<windows.h>
using namespace std;



int main()
{
int tab[100];
int n; // ilosc elementow w tablicy
int x; // wybrany element tablicy
int i,j; // LICZNIKI
cout<<"PROGRAM - SORTOWANIE PRZEZ WSTAWIANIE"<<endl<<endl;

do{
cout<<"Podaj ile bedzie liczb: ";
cin>>n;
}while(n<=0);

srand(time(0));

cout<<endl<<endl<<"Wylosowane liczby to:"<<endl;
for (int i=0; i<n; i++)
{
tab[i] = rand() % 50 + 1;
cout<<tab[i]<<", ";
}

for(j=n-2; j>=0; j--)
{
x=tab[j];
i=j+1;
while((i<n) && (x>tab[i]))
{
tab[i-1]=tab[i];
i++;
}
tab[i-1]=x;
}

cout<<endl<<endl<<"Tablica posorotwana wyglada nastepujaco"<<endl;
for(i=0;i<n;i++)
cout<<tab[i] <<", ";
}