Advertisement
MeehoweCK

Untitled

Nov 18th, 2020
535
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.11 KB | None | 0 0
  1. #include <iostream>
  2. #include <ctime>
  3. #include <cstdlib>
  4.  
  5. using namespace std;
  6.  
  7. const int W = 7, K = 8;
  8.  
  9. bool sprawdzenie(char tablica[], int rozmiar, int x)
  10. {
  11.     int licznik = 0;
  12.  
  13.     for(int i = 0; i < rozmiar; i++)
  14.     {
  15.         if(tablica[i] >= 'a' && tablica[i] <= 'z')
  16.             licznik++;
  17.     }
  18.  
  19.     if(licznik >=x)
  20.         return true;
  21.     return false;
  22. }
  23.  
  24. bool sprawdzenie_cyfry(char tablica[], int rozmiar)
  25. {
  26.     for(int i = 0; i < rozmiar; i++)
  27.     {
  28.         if(tablica[i] >= '0' && tablica[i] <= '9')
  29.             return true;
  30.     }
  31.  
  32.     return false;
  33. }
  34.  
  35. void zamiana_tablicy(char tablica[], int rozmiar)
  36. {
  37.     char tablica2[rozmiar];
  38.  
  39.     tablica2[0] = tablica[rozmiar - 1];
  40.  
  41.     for(int i = 0; i < rozmiar - 1; i ++)
  42.     {
  43.         tablica2[i+ 1] = tablica[i];
  44.     }
  45.  
  46.     for(int i = 0; i < rozmiar; i++)
  47.     {
  48.         tablica[i] = tablica2[i];
  49.     }
  50. }
  51.  
  52. void wczytywanie_tablicy( char a[][K])
  53. {
  54.     srand(time(NULL));
  55.  
  56.     for(int i = 0; i < W; i++)
  57.     {
  58.         for(int j = 0; j < K; j++)
  59.         {
  60.             a[i][j] = rand() % 94 + 33;
  61.         }
  62.     }
  63. }
  64.  
  65. void wypisanie_tablicy( char a[][K])
  66. {
  67.     for(int i = 0; i < W; i++)
  68.     {
  69.         for(int j = 0; j < W; j++)
  70.             cout << a[i][j] << '\t';
  71.         cout << endl;
  72.     }
  73.  
  74. }
  75.  
  76. void konwertowanie( char tablica[][K], int x)
  77. {
  78.     char tab[W];
  79.  
  80.     for(int i = 0; i < K; i++)
  81.     {
  82.         // wczytujemy kolumnę do tablicy pomocniczej:
  83.         for(int j = 0; j < W; ++j)
  84.             tab[j] = tablica[j][i];
  85.  
  86.         // konwersja właściwa
  87.         if(sprawdzenie_cyfry(tab, W) && sprawdzenie(tab, W, x))
  88.             do
  89.             {
  90.                 zamiana_tablicy(tab, W);
  91.             }
  92.             while(tab[W - 1] < '0' || tab[W - 1] > '9');
  93.  
  94.         // przeniesienie kolumny do tablicy:
  95.         for(int j = 0; j < W; ++j)
  96.             tablica[j][i] = tab[j];
  97.     }
  98. }
  99.  
  100. int main()
  101. {
  102.     char tablica[W][K];
  103.     wczytywanie_tablicy(tablica);
  104.     wypisanie_tablicy(tablica);
  105.     konwertowanie(tablica, 2);
  106.     cout << endl;
  107.     wypisanie_tablicy(tablica);
  108.  
  109.  
  110.     return 0;
  111. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement