Programowanie C++ / HTML & CSS / Arduino - ProximalBots

C++

Sortowanie

Program sortuje wartości w tablicy

Algorytm 1

#include "iostream"
 
using namespace std;
 
void sortowanie(int tab[]) {
 
    int flaga = 1;
    for (; flaga != 0;) {
 
        flaga = 0;
 
        for (int i = 0; i < 4; i++) {
            //warunek zamieniający liczby
            if (tab[i] > tab[i + 1]) {
                int temp = tab[i];
                tab[i] = tab[i + 1];
                tab[i + 1] = temp;
 
                flaga = 1;
            }
        }
    }
}
int main()
{
    int tab[5]{5,4,3,2,1};
   
    //wyświetla aktualny stan
    cout << "aktualny stan tablicy" << endl;
    for (int i = 0; i < 5; i++) {
        cout << tab[i];
        cout << " ";
    }
    cout << endl << endl;
 
    //wywołanie funkcji sortowanie
    sortowanie(tab);
 
    //stan tblicy po sortowaniu
    cout << "stan tablicy po sortowaniu" << endl;
    for (int i = 0; i < 5; i++) {
        cout << tab[i];
        cout << " ";
    }
    cout << endl;
    return 0;
}

Algorytm 2

#include "iostream"
 
using namespace std;
 
void sortowanie(int tab[5])
{
    for (int i = 0; i < 5; i++) {
 
        int mini = tab[i];
        int pozycja = i;
 
        for (int j = i + 1; j < 5; j++) {
            if (mini > tab[j]) {
                mini = tab[j];
                pozycja = j;
            }
        }
        int temp = tab[i];
        tab[i] = tab[pozycja];
        tab[pozycja] = temp;
    }
}
int main()
{
    int tab[5]{6, 2, 7, 4, 5};
 
    cout << "Przed sortowaniem" << endl;
    for (int i = 0; i < 5; i++) {
        cout << tab[i] << " ";
    }
 
    sortowanie(tab);
 
    cout << endl << endl << "Po sortowaniu" << endl;
    for (int i = 0; i < 5; i++) {
        cout << tab[i] << " ";
    }
    cout << endl;
 
    return 0;
}

Algorytm 3

#include "iostream"
 
using namespace std;
 
void sortowanie(int tab[]) {
    for (int i = 1, k; i < 10; i++) {
        int temp = tab[i];
 
        for (k = i - 1; k >= 0 && temp < tab[k]; k--) {
 
            tab[k + 1] = tab[k];
        }
        tab[k + 1] = temp;
    }
}
int main()
{
    int tab[10]{ 13,15,10,9,8,7,17,5,4,3 };
 
    cout << "Przed sortowaniem" << endl;
    for (int i = 0; i < 10; i++) cout << tab[i] << " ";
 
    sortowanie(tab);
 
    cout << endl << endl << "Po sortowaniu" << endl;
    for (int i = 0; i < 10; i++) cout << tab[i] << " ";
    cout << endl;
 
    return 0;
}

Aktualności