ToniDev

Deplasarea la dreapta & stanga sub diagonala principala

May 26th, 2022
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.11 KB | None | 0 0
  1. int A[10][10], n, m, k, aux;
  2.  
  3. void afisare() {
  4.     cout << endl;
  5.  
  6.     for (int i = 1; i <= n; i++)
  7.     {
  8.         for (int j = 1; j <= n; j++)
  9.             cout << A[i][j] << " ";
  10.         cout << endl;
  11.     }
  12.     cout << endl;
  13. }
  14.  
  15. int main()
  16. {
  17.     cout << "k: "; cin >> k;
  18.     cout << "n: "; cin >> n;
  19.  
  20.     /* initialize random seed: */
  21.     srand(time(NULL));
  22.  
  23.     /* generate secret number between 1 and 10: */
  24.     int nrGeneratRandom;
  25.  
  26.     for (int i = 1; i <= n; i++)
  27.     {
  28.         for (int j = 1; j <= n; j++)
  29.         {
  30.             nrGeneratRandom = rand() % 7 + 1;
  31.             A[i][j] = nrGeneratRandom; //Introducere date in matrice
  32.         }
  33.     }
  34.  
  35.     afisare();
  36.  
  37.  
  38.  /*Deplasarea cu o pozitie spre dreapta*/
  39.  
  40.     aux = A[k][k - 1];
  41.  
  42.     for (int j = k - 2; j >= 1; j--)
  43.         A[k][j + 1] = A[k][j];
  44.  
  45.     A[k][1] = aux;
  46.  
  47.  
  48.  
  49. /* Deplasarea cu o pozitie spre stanga
  50.    sub diagonala principala!           */
  51.  
  52.     aux = A[k][1];
  53.  
  54.     for (int j = 1; j <= k - 2; j++)
  55.         A[k][j] = A[k][j + 1];
  56.  
  57.     A[k][k - 1] = aux;
  58.  
  59.  
  60.     afisare();
  61.  
  62.     cout << endl;
  63.  
  64.     return 0;
  65. }
Advertisement
Add Comment
Please, Sign In to add comment