fork download
  1. #include<iostream>
  2. #include <algorithm>
  3.  
  4. using namespace std;
  5.  
  6. int main()
  7. {
  8. // INIT
  9. int n;
  10.  
  11. cout << "Podaj ilosc elementow: "<< endl;
  12. cin >> n;
  13.  
  14. int* tab = new int[n];
  15.  
  16. cout << "Wprowadz wartosci elementow: "<< endl;
  17. for (int i = 0; i < n; i++) {
  18. cin >> tab[i];
  19. }
  20.  
  21. // SORT - jedna petla :]
  22.  
  23. bool anySwap = false;
  24.  
  25. for (int i = 1; i < n; i++)
  26. {
  27. if (tab[i] < tab[i-1])
  28. {
  29. swap (tab[i],tab[i-1]);
  30. anySwap = true;
  31. }
  32.  
  33. // reset petli jesli doszlo do jakiegokolwiek swapa
  34. if (anySwap && i >= n - 1) {
  35. // ustawiamy i na 0, bo zaraz zostanie zwiekszone o 1 i zacznie sie nastepny przebieg sortujacy
  36. i = 0;
  37. anySwap = false;
  38. }
  39. }
  40.  
  41. // OUT
  42.  
  43. cout << "Wynik sortowania:" << endl;
  44.  
  45. for (int i = 0; i < n; i++) {
  46. cout << tab[i] << " ";
  47. }
  48.  
  49. // CLEAN
  50.  
  51. delete[] tab;
  52.  
  53. return 0;
  54. }
Success #stdin #stdout 0s 15232KB
stdin
5
4 2 7 8 1
stdout
Podaj ilosc elementow: 
Wprowadz wartosci elementow: 
Wynik sortowania:
1 2 4 7 8