Sortowanie bąbelkowe w C++


(system) #1

Witam, mam pytanko odnośnie programu stworzonego w c++, mianowicie czy ktoś wie w jaki sposób wyświetlić przebieg sortowania bąbelkowego

(bubble sort). Mam napisany cały program, nawet z wypisaniem uporządkowanych licz. Brakuje mi tylko wyświetlenia postępu

po każdym przejściu. Bardzo prosze o pomoc.


(Fiołek) #2

Do pętli która robi to sortowanie dodaj np. wypisywanie na ekran numer przebiegu pętli.


(system) #3
/



/*Program sortuje tablicę w porządku rosnącym

Metoda : sortowanie bąbelkowe (bubble sort)*/

#include 

#include 

#include 


using namespace std;


int main(int argc, char *argv[])

{

  const int rozmiarTablicy=8;

  int a[rozmiarTablicy] = {7,5,3,4,9,8,1,2};

  int i, tymczasowa, przejscie=0;


  cout<<"Dane przed sortowaniem:\n";


  for (i=0;i
      cout<

  for(int przebieg=0;przebieg
    {

        cout<< "\nPrzejscie nr"<
        cout<
    for(i=0;i
      {  

        if (a[i]>a[i+1])

        {

            tymczasowa = a[i]; //porownanie

            a[i] = a[i+1]; //zamiana

            a[i+1] = tymczasowa;


        }

    ********** TUTAJ POWINIEN BYĆ TEN PRZEBIEG

      } 

     cout<
    }       


   cout<< "\nDane posortowane:\n"; 


        for (i=0;i
              cout<

               cout<
  system("PAUSE");	

  return 0;

}

Jakby ktoś mógł napisać co można tam dodać aby był widoczny każdy przebieg. Od niedawna jestem w tej branży i jeszcze nie bardzo sie

w tym orientuje. Z góry dzienx za pomoc. Dodam że program wyświetla już przebieg ale nie tak jak powinien


(Fiołek) #4

A mógłbyś kod umieszczać w znacznikach

 i

?

Możesz w miejsce "**********TUTAJ POWINIEN BYĆ TEN PRZEBIEG" wstawić np.

cout << "Mamy " << przebieg << " przebieg petli!" << endl;