👤

C++ Napisz program sortujący liczby rosnąco.

Odpowiedź :

#include <iostream>

void insertionSort(int array[], int n){

   int i = 1;

   while (i < n){

       int j = i-1;

       int tmp = array[i];

       while (j>= 0 && array[j] > tmp){

           array[j+1] = array[j];

           j--;

       }

       array[j+1] = tmp;

       i++;

   }

}

void print(int array[], int n){

   for (int i = 0; i < n; i++){

       std::cout << array[i] << " ";

   }

}

int main(){

   int arr[5] = {4,1,8,5,3};

   insertionSort(arr,5);

   print(arr,5);

}

Odpowiedź:

#include <iostream>

#include <vector>

using namespace std;

int main() {

 vector<int> lista = {9, 8, 7, 5, 6, 4, 1, 2, 3};

 int n = lista.size() - 1;

 do {

   for (int i = 0; i < n; i++) {

     if (lista[i] > lista[i + 1]) {

       int tmp = lista[i];

       lista[i] = lista[i + 1];

       lista[i + 1] = tmp;

     }

   }

   n--;

 } while (n > 0);

 for (int item : lista) {

   cout << item << " ";

 }

 cout << endl;

 return 0;

}

Przykładowy wynik:

we: 9 8 7 5 6 4 1 2 3

wy: 1 2 3 4 5 6 7 8 9