JouJoy

Untitled

Jan 15th, 2021
624
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include<iostream>
  2. using namespace std;
  3.  
  4. void createMatrix(int** Matrix, int n, int m)
  5. {
  6.     for (int i = 0; i < n; i++)
  7.     {
  8.         for (int j = 0; j < m; j++)
  9.         {
  10.             cout << "Элемент[" << i << "][" << j << "]=";
  11.             cin >> Matrix[i][j];
  12.         }
  13.     }
  14.  
  15. }
  16.  
  17.  
  18. void showMatrix(int** Matrix, int n, int m)
  19. {
  20.     for (int i = 0; i < n; i++)
  21.     {
  22.         for (int j = 0; j < m; j++)
  23.         {
  24.             cout << Matrix[i][j] << "\t";
  25.         }
  26.         cout << endl;
  27.     }
  28. }
  29.  
  30. void change(int** Matrix, int n, int m)
  31. {
  32.     int i, j;
  33.     int* MatrStroka;
  34.     int S6 = -1, S9 = -1;//сюда запишем номера строк с нужными числами( минус один поставили, чтобы в случае, если строки нет программа ничего не меняла)
  35.     for (i = 0; i < n; i++)
  36.     {
  37.         for (j = 0; j < m; j++)
  38.         {
  39.             if (Matrix[i][j] == 6)//находим нужные числа и записываем номера строк
  40.                 S6 = i;
  41.             if (Matrix[i][j] == 9)
  42.                 S9 = i;
  43.         }
  44.     }
  45.     if (S9 != S6 && S9 != -1 && S6 != -1)
  46.     {
  47.         MatrStroka = Matrix[S6];
  48.         Matrix[S6] = Matrix[S9];
  49.         Matrix[S9] = MatrStroka;
  50.     }
  51. }
  52.  
  53.  
  54.  
  55. int main()
  56. {
  57.     setlocale(LC_ALL, "rus");
  58.     int n, m;
  59.     cout << "Введите размерность матрицы n*m: " << endl;
  60.     cout << "(количество строк) n= ";
  61.     cin >> n;
  62.     cout << "(количество столбцов) m= ";
  63.     cin >> m;
  64.     int** A = new int* [n];
  65.     for (int i = 0; i < n; i++)
  66.     {
  67.         A[i] = new int[m];
  68.     }
  69.     cout << "Введите матрицу " << endl;
  70.     createMatrix(A, n, m);
  71.     showMatrix(A, n, m);
  72.     cout << endl;
  73.  
  74.     change(A, n, m);
  75.     cout << "Матрица после изменения:" << endl;
  76.     showMatrix(A, n, m);
  77.  
  78.  
  79.     for (int i = 0; i < n; i++)
  80.         delete[] A[i];
  81.     delete[] A;
  82.  
  83.     return 0;
  84. }
RAW Paste Data