Advertisement
35657

Untitled

Feb 23rd, 2024 (edited)
817
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.72 KB | None | 0 0
  1. #include <iostream>
  2. #include <time.h>   // для time()
  3. #include <stdlib.h> // для rand()
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8.  
  9.     setlocale(LC_ALL, "ru");
  10.  
  11.     srand(time(NULL));
  12.  
  13.     const int row = 5;
  14.  
  15.     const int col = 6;
  16.  
  17.     int arr[row][col];
  18.  
  19.     int type, count;
  20.  
  21.     cout << "Введите 1 для сдвига вправо, 2 для сдвига влево, 3 для сдвига вниз, 4 для сдвига вверх: ";
  22.  
  23.     cin >> type;
  24.  
  25.     cout << "Введите количество разрядов сдвига: ";
  26.  
  27.     cin >> count;
  28.  
  29.     for (int i = 0; i < row; i++) {
  30.         for (int j = 0; j < col; j++) {
  31.             arr[i][j] = rand() % 100;
  32.             cout << arr[i][j] << '\t';
  33.         }
  34.         cout << endl;
  35.     }
  36.     cout << endl << endl;
  37.  
  38.     if (type == 1) { // сдвиг массива вправо
  39.         for (int n = 0; n < count % col; n++) {
  40.             for (int i = 0; i < row; i++) {
  41.                 int temp = arr[i][col - 1];
  42.                 for (int j = col - 1; j > 0; j--) {
  43.                     arr[i][j] = arr[i][j - 1];
  44.                 }
  45.                 arr[i][0] = temp;
  46.             }
  47.         }
  48.     }
  49.     else if (type == 3) { // сдвиг массива вниз
  50.         for (int n = 0; n < count % row; n++) {
  51.             for (int i = 0; i < col; i++) {
  52.                 int temp = arr[row - 1][i];
  53.                 for (int j = row - 1; j > 0; j--) {
  54.                     arr[j][i] = arr[j - 1][i];
  55.                 }
  56.                 arr[0][i] = temp;
  57.             }
  58.         }
  59.     }
  60.     else if (type == 4) { // сдвиг массива вверх
  61.         for (int n = 0; n < count % row; n++) {
  62.             for (int i = 0; i < col; i++) {
  63.                 int temp = arr[0][i];
  64.                 for (int j = 0; j < row - 1; j++) {
  65.                     arr[j][i] = arr[j + 1][i];
  66.                 }
  67.                 arr[row - 1][i] = temp;
  68.             }
  69.         }
  70.     }
  71.  
  72.     for (int i = 0; i < row; i++) {
  73.         for (int j = 0; j < col; j++) {
  74.             cout << arr[i][j] << '\t';
  75.         }
  76.         cout << endl;
  77.     }
  78. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement