[C++] Problem z sortowaniem bąbelkowym
Ostatnio zmodyfikowano 2015-11-30 21:22
Razner Temat założony przez niniejszego użytkownika |
[C++] Problem z sortowaniem bąbelkowym » 2015-11-30 20:13:19 Chciałem dodać do jednego z zadań z kursu sortowanie bąbelkowe. Szukałem pomocy na internecie ale nie mogę dojść dlaczego nie sortuje tablicy. #include <iostream> #include <cstdlib> #include <ctime> using namespace std; void wylosujLiczby( int tab[], int liczbwartab ) { srand( time( NULL ) ); for( int i = 0; i < liczbwartab; i++ ) { tab[ i ] =( std::rand() % 20 ) + 10; } }
void zamien( int wieksza, int mniejsza ) { int a = wieksza; int b = mniejsza; mniejsza = a; wieksza = b; } void sortowanie( int tab[], int liczbwartab ) { for( int i = 0; i < liczbwartab; i++ ) { for( int j = 0; j < liczbwartab - 1; j++ ) { if( tab[ j ] > tab[ j + 1 ] ) zamien( tab[ j ], tab[ j + 1 ] ); } } for( int i = 0; i < 10; i++ ) { cout << "sortowanie: " << tablica[ i ] << endl; } }
int main() { int tablica[ 10 ]; wylosujLiczby( tablica, 10 ); sortowanie( tablica, 10 ); return 0; }
PS: Mile widziane uwagi do reszty kodu :) |
|
carlosmay |
» 2015-11-30 21:11:27 void zamien( int & wieksza, int & mniejsza )
skorzystaj z przekazania przez referencję, żeby zamiana dotyczyła przekazywanych elementów tablicy. Bez tego zmienne przekazane są lokalne i po wyjściu z funkcji tracone, a oryginalne nie zmienione. |
|
Razner Temat założony przez niniejszego użytkownika |
» 2015-11-30 21:22:06 Dzięki teraz wszystko działa Ps: jakby ktoś chciał kompilować to w wypisywaniu liczb przy sortowaniu powinno być tab a nie tablica taki mały bubel się wkradł :) |
|
« 1 » |