Advertisement
MeehoweCK

Untitled

Dec 17th, 2020
806
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.91 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <ctime>
  4.  
  5. using namespace std;
  6.  
  7. const short N = 6;
  8.  
  9. bool czy_juz_jest(short liczba, short* tablica, short n)
  10. {
  11.     for(short i = 0; i < n; ++i)
  12.         if(liczba == tablica[i])
  13.             return true;
  14.     return false;
  15. }
  16.  
  17. void wypelnij_tablice(short* tablica)
  18. {
  19.     srand(time(nullptr));
  20.     short losowana;
  21.     for(short i = 0; i < N; ++i)
  22.     {
  23.         do
  24.         {
  25.             losowana = 1 + rand() % 49;
  26.         }
  27.         while(czy_juz_jest(losowana, tablica, i));
  28.         tablica[i] = losowana;
  29.     }
  30. }
  31.  
  32. void wypisz_tablice(short* tablica)
  33. {
  34.     for(short i = 0; i < N; ++i)
  35.         cout << tablica[i] << '\t';
  36.     cout << endl;
  37. }
  38.  
  39. void bubblesort(short* tablica)
  40. {
  41.     short n = N - 1;
  42.     for(short i = 0; i < n; ++i)
  43.         for(short j = 0; j < n - i; ++j)
  44.             if(tablica[j] > tablica[j + 1])
  45.                 swap(tablica[j], tablica[j + 1]);       // zamiana
  46. }
  47.  
  48. void pobierz_liczbe(short& liczba)
  49. {
  50.     cin >> liczba;
  51.  
  52.     while(liczba < 1 || liczba > 49 || cin.fail())
  53.     {
  54.         cout << "Podana wartosc jest nieprawidlowa. Wpisz nowa liczbe z przedzialu od 1 do 49: ";
  55.         cin.clear();
  56.         cin.ignore(99999, '\n');
  57.         cin >> liczba;
  58.     }
  59. }
  60.  
  61. void strzal(short podawane[])
  62. {
  63.     short liczba;
  64.     cout<<"podaj 6 liczb\n";
  65.     for(int i=0; i<6; i++)
  66.     {
  67.  
  68.         pobierz_liczbe(liczba);
  69.         while(czy_juz_jest(liczba,podawane,i ))
  70.         {
  71.             cout<<"liczba juz sie powtarza, wprowadz nowa \n";
  72.             pobierz_liczbe(liczba);
  73.         }
  74.         podawane[i]= liczba;
  75.     }
  76. }
  77.  
  78. int main()
  79. {
  80.     short losowane[N];
  81.     short typowane[N];
  82.     strzal(typowane);
  83.     cout << "Wytypowales liczby:\t";
  84.     wypisz_tablice(typowane);
  85.     wypelnij_tablice(losowane);
  86.     bubblesort(losowane);
  87.     cout << "Wylosowano liczby:\t";
  88.     wypisz_tablice(losowane);
  89.     return 0;
  90. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement