Advertisement
Guest User

Untitled

a guest
Nov 19th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.91 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <time.h>
  4. #include <cstdlib>
  5. #include <stdio.h>
  6. using namespace std;
  7.  
  8. int const zakres=100; int n=10; vector<int> v(n); int m, k, y, wybor;
  9.  
  10. int zamien(int &a, int &b)
  11. {
  12.     int pom=a;
  13.     a=b;
  14.     b=pom;
  15. }
  16. void losuj(vector<int> &v)
  17. {
  18.     srand(time(NULL));
  19.     for(int i=0; i<v.size(); ++i) v[i]=rand()%zakres;
  20. }
  21. void wypisz(vector<int> v)
  22. {
  23.     for(int i=0; i<v.size(); ++i) cout<<v[i]<<" ";
  24.     cout<<'\n';
  25. }
  26. void wyb(vector<int> &v)
  27. {
  28.     for(int i=0; i<n-1; ++i)
  29.     {
  30.         m=i;
  31.         for(int j=i+1; j<n; ++j)
  32.         {
  33.             if(v[j]<v[m]) m=j;
  34.         }
  35.         zamien(v[m], v[i]);
  36.         wypisz(v);
  37.     }
  38. }
  39. void wst(vector<int> &v)
  40. {
  41.     for(int i=1; i<n; ++i)
  42.     {
  43.         y=v[i];
  44.         k=i-1;
  45.         while( y<v[k] && k>=0 )
  46.         {
  47.             v[k+1]=v[k];
  48.             k=k-1;
  49.         }
  50.         v[k+1]=y;
  51.         wypisz(v);
  52.     }
  53. }
  54. void babelkowe(vector<int> &v)
  55. {
  56.     for(int i=0; i<n-1; ++i)
  57.     {
  58.         for(int j=0; j<n-i-1; ++j)
  59.         {
  60.             if(v[j]>v[j+1])
  61.             {
  62.                 zamien(v[j],v[j+1]);
  63.             }
  64.             wypisz(v);
  65.         }
  66.     }
  67. }
  68. int main()
  69. {
  70.     cout << "MENU GLOWNE: " << '\n';
  71.     cout << "1. Losuj dane" << '\n';
  72.     cout << "2. Wypisz dane" << '\n';
  73.     cout << "3. Sortowanie przez proste wybieranie" << '\n';
  74.     cout << "4. Sortowanie przez proste wstawianie" << '\n';
  75.     cout << "5. Sortowanie babelkowe" << '\n';
  76.     cout << "6. Koniec" << '\n';
  77.  
  78.     while(wybor!=6)
  79.     {
  80.         cout << "Twoj wybor: "; cin >> wybor;
  81.  
  82.         switch(wybor)
  83.         {
  84.         case 1:
  85.             losuj(v);
  86.             cout<<"Juz wylosowane, mozna przejsc do wypisania (2)"<<'\n';
  87.             break;
  88.         case 2:
  89.             wypisz(v);
  90.             break;
  91.         case 3:
  92.             wyb(v);
  93.             cout<<"Dane posortowane, mozesz losowac ponownie"<<'\n';
  94.             break;
  95.         case 4:
  96.             wst(v);
  97.             cout<<"Dane posortowane, mozesz losowac ponownie"<<'\n';
  98.             break;
  99.         case 5:
  100.             babelkowe(v);
  101.             cout<<"Dane posortowane, mozesz losowac ponownie"<<'\n';
  102.             break;
  103.         case 6:
  104.             exit(0);
  105.         default:
  106.             cout<<"Podales zla cyfre, sprobuj jeszcze raz "<<'\n';
  107.             break;
  108.         }
  109.     }
  110.     return 0;
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement