Advertisement
Guest User

Untitled

a guest
Apr 2nd, 2020
163
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.95 KB | None | 0 0
  1. /*
  2. program do utworzenia 50 elementowej tablicy wypełnionej losowymi liczbami
  3. a następnie sortujący te liczby ze względu na wartość, z użyciem wskaźników do tablic
  4. */
  5.  
  6. // includy
  7. #include <iostream> // glowna bibioteka
  8. #include <time.h> // losowanie oparte o czas
  9. #include <cstdlib> // rand
  10. #include <iomanip> // wyswietlanie na kolumnach
  11. using namespace std; // std::
  12.  
  13. void zamiana(int& a, int& b) // funkcja zamieniająca a i b miejscami
  14. {
  15. int bufor = a; // zapisz do buforu a
  16. a = b; // zapisz b do a
  17. b = bufor; // zapisz stare a do b
  18. };
  19.  
  20. void sortowanie(int& p, int& pi) // funkcja sortująca bąbelkowo
  21. {
  22. if (p > pi) // jezeli p+1 > p zamien je miejscami
  23. zamiana(p, pi);
  24. }
  25.  
  26. int main() // funkcja glowna
  27. {
  28. cout << "Witaj w programie sortujacyn!" << endl; // przywitanie
  29.  
  30. // deklaracje zmiennych
  31. int liczby[50], * p = liczby; // stworz tablice 50 elementowa, zrob wskaznik jako odwolanie do tej tablicy
  32.  
  33. // wpisywanie losowych wartosci
  34. srand(time(NULL)); // zainicjowanie losowania
  35. for (int i = 0; i < 50; i++) // petla do wpisania losowych wartosci
  36. *(p + i) = rand() % 10000 + 1; // losowanie wartosci
  37.  
  38. // wyswietlenie tablicy przed sortowaniem
  39. cout << "przed posortowaniem:" << endl;
  40. for (int i = 0; i < 50; i++) // petla do wypisania tabeli przed posortowaniem
  41. cout << setw(5) << *(p + i) << "\t"; // wypisz tabele przed sortowaniem o szerokosci kolumny 5
  42.  
  43. // sortowanie
  44. for (int i = 0; i < 50; i++) // przejdz całą tablice
  45. for (int j = 0; j < 49 - i; j++) // za kazdym razem przenies najwyzsza liczbe wyzej
  46. sortowanie(*(p + j + 1), *(p + j));
  47.  
  48. // wyswietlenie tablicy po posortowaniu
  49. cout << endl << endl << "po posortowaniu:" << endl;
  50. for (int i = 0; i < 50; i++) // petla do wypisywania tabeli po posortowaniu
  51. cout << setw(5) << *(p + i) << "\t"; // wypisz tabele po posortowaniu o szerokosci kolumny 5
  52. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement