﻿/*
*  Sortowanie bąbelkowe
*
*  Przykład implementracji algorytmu sortowania babelkowego
* 
* MB 
* 10.2021
*
*/

#include <iostream>
using namespace std;

int main()
{
    std::cout << "Sortowanie babelkowe\n\n\n";
    int tab[] = { 120,34,50,6,7,8,90 };

    cout << "nieposortowane:\n";
    for (int i = 0; i < 7; i++) {
        std::cout << tab[i] << " ";
    }

    // zmienna pomocnicza
    int a = 0;

    // ilość przebiegów sprawdzeń pary liczb
    // (size of tab) -1
    int k = 6;
    // pętla po wszystkich przebiegach
    for (int j = 0; j < 6; j++) {
        // pętla po pojedynczym przebiegu
        for (int i = 0; i < k; i++) {
            if (tab[i] > tab[i + 1]) {
                a = tab[i];
                tab[i] = tab[i + 1];
                tab[i + 1] = a;
            }           
        }
        // dekrementacja ilosci sprawdzen w pojedyńczym przebiegu
        k--;
    }
      
    
    cout << "\n\nposortowane:\n";
    for (int i = 0; i < 7; i++) {
        std::cout << tab[i] << " ";
    }

    cout << endl;
}

