Skocz do zawartości

Gnex

Członkowie
  • Postów

    1
  • Dołączył

  • Ostatnio

Gnex's Achievements

Newbie

Newbie (1/14)

0

Reputacja

  1. Witam! Napisałem program, który w domyśle miał sortować metodą bąbelkową. Jednak istnieje bardzo dziwny problem,którego nie mogę zlokalizować mianowicie dla dowolnych danych wejściowych np. 22, 21, 48 po posortowaniu wyrzuca wynik typu 3,21,22 albo 21,3,22 i nie mam bladego pojęcia czemu tak się dzieje. #include <iostream> #include <algorithm> using namespace std; void BubbleSort(int tab[]); void Wyswietl(int tab[]); int main() { int iTab[3]; cout << "Sortowanie babelkowe" << endl; cout << "Podaj 3 liczby: " << endl; for (int i = 0; i < 3; i++) { cin >> iTab[i]; } cout << "Przed sortowaniem: " << endl; Wyswietl (iTab); cout << "Po sortowaniu: " << endl; BubbleSort(iTab); Wyswietl(iTab); return 0; } void BubbleSort(int tab[]) { int n = sizeof(tab); int temp = 0; do { for (int i = 0; i < n-1; i++) { if (tab[i] > tab[i+1]) { swap(tab[i],tab[i+1]); //temp = tab[i]; //tab[i] = tab[i+1]; //tab[i+1] = temp; } } n = n - 1; }while(n>1); } void Wyswietl(int tab[]) { for (int i = 0; i < 3; i++) { cout << tab[i] << endl; } }
×
×
  • Utwórz nowe...