Chodzi, ale nie wiem czemu tylko dla tablicy <10 :P Jak ktoś znajdzie błąd niech się dzieli :]
#include <iostream> using namespace std;
void sortowanie(int tab1[],int tab2[],int rozmiar) { for(int i=0;i<rozmiar;i++) tab2[i]=-1; int min; bool bylo=false; int max=tab1[0];
for(int i=0;i<rozmiar;i++) if (tab1[i]>max) max=tab1[i]; for(int j=0;j<rozmiar;j++) { min=max; for(int i=0;i<rozmiar;i++) { if (tab1[i]<=min) { bylo=false; for(int k=0;k<j;k++) if (i==tab2[k]) bylo=true; if (!bylo) { tab2[j]=i; min=tab1[i]; } } } } for(int i=0;i<rozmiar;i++) tab2[i]=tab1[tab2[i]]; for(int i=0;i<rozmiar;i++) cout<<tab2[i]<<endl; }
int main() { int rozmiar, tablica1[rozmiar], tablica2[rozmiar]; cout<<"Podaj rozmiar tablicy: "; cin>>rozmiar; cout<<endl; for(int i=0;i<rozmiar;i++) { cout<<"Podaj wartosc: "; cin>>tablica1[i]; } cout<<endl; sortowanie(tablica1,tablica2,rozmiar); system("pause"); }
|