Advertisement
HyperSensualNarwhal

Row or column swap in two-dimensional array

Jan 17th, 2017
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.68 KB | None | 0 0
  1. #include <iostream>
  2. #include <ctime>
  3. #include <Windows.h>
  4.  
  5. using std::cout;
  6. using std::cin;
  7. using std::endl;
  8.  
  9. #define TAB '\t'
  10.  
  11. void main()
  12. {
  13.     srand(time(NULL));
  14.     setlocale(0, "");
  15.  
  16.     const int sz = 4;
  17.  
  18.     int alpha[sz][sz];
  19.  
  20.     int tmp[sz];
  21.  
  22.     bool choise = 0;
  23.     int f_clmn, s_clmn;
  24.     int f_rw, s_rw;
  25.    
  26.  
  27.     for (int i = 0; i < sz; ++i)
  28.         for (int j = 0; j < sz; ++j)
  29.             alpha[i][j] = rand() % 90 + 10;
  30.        
  31.         while (true)
  32.     {
  33.         for (int i = 0; i < sz; cout << endl << endl, ++i)
  34.             for (int j = 0; j < sz; ++j)
  35.                 cout << alpha[i][j] << TAB;
  36.        
  37.         cout << endl << endl << endl << "0. Поменять строки " << endl << "1. Поменять столбцы " << endl;
  38.         cout << "-> ";  cin >> choise;
  39.  
  40.         if (choise == 0)
  41.         {
  42.             cout << "Введите номер строк, которые нужно поменять местами -> "; cin >> f_rw >> s_rw;
  43.             cout << endl << endl << endl << endl;
  44.  
  45.             f_rw -= 1;
  46.             s_rw -= 1;
  47.  
  48.             for (int i = 0; i < sz; ++i)
  49.                 for (int j = 0; j < sz; ++j)
  50.                     if (i == f_rw)
  51.                     {
  52.                         tmp[i] = alpha[f_rw][j];
  53.                         alpha[f_rw][j] = alpha[s_rw][j];
  54.                         alpha[s_rw][j] = tmp[i];
  55.  
  56.                     }
  57.         }
  58.         else
  59.         {
  60.             cout << "Введите номер столбцов, которые нужно поменять местами -> "; cin >> f_clmn >> s_clmn;
  61.             cout << endl << endl << endl << endl;
  62.  
  63.             f_clmn -= 1;
  64.             s_clmn -= 1;
  65.  
  66.             for (int i = 0; i < sz; ++i)
  67.                 for (int j = 0; j < sz; ++j)
  68.                     if (i == f_clmn)
  69.                     {
  70.                         tmp[i] = alpha[j][f_clmn];
  71.                         alpha[j][f_clmn] = alpha[j][s_clmn];
  72.                         alpha[j][s_clmn] = tmp[i];
  73.                     }
  74.         }
  75.    
  76.         cout << endl << endl << endl << endl;
  77.         system("cls");
  78.     }
  79.  
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement