JouJoy

Untitled

Jan 15th, 2021
613
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.     bool S6find=false;//E-свойство
  35.     bool S9find = false;
  36.     int S6, S9;//сюда запишем номера строк с нужными числами( минус один поставили, чтобы в случае, если строки нет программа ничего не меняла)
  37.     for (i = 0; i < n; i++)
  38.     {
  39.         for (j = 0; j < m; j++)
  40.         {
  41.             if (Matrix[i][j] == 6)//находим нужные числа и записываем номера строк
  42.             {
  43.                 S6 = i;
  44.                 S6find = true;
  45.             }
  46.             if (Matrix[i][j] == 9)
  47.             {
  48.                 S9 = i;
  49.                 S9find = true;
  50.             }
  51.         }
  52.     }
  53.     if ((S9 != S6) && S9find && S6find)
  54.     {
  55.         MatrStroka = Matrix[S6];
  56.         Matrix[S6] = Matrix[S9];
  57.         Matrix[S9] = MatrStroka;
  58.     }
  59. }
  60.  
  61.  
  62.  
  63. int main()
  64. {
  65.     setlocale(LC_ALL, "rus");
  66.     int n, m;
  67.     cout << "Введите размерность матрицы n*m: " << endl;
  68.     cout << "(количество строк) n= ";
  69.     cin >> n;
  70.     cout << "(количество столбцов) m= ";
  71.     cin >> m;
  72.     int** A = new int* [n];
  73.     for (int i = 0; i < n; i++)
  74.     {
  75.         A[i] = new int[m];
  76.     }
  77.     cout << "Введите матрицу " << endl;
  78.     createMatrix(A, n, m);
  79.     showMatrix(A, n, m);
  80.     cout << endl;
  81.  
  82.     change(A, n, m);
  83.     cout << "Матрица после изменения:" << endl;
  84.     showMatrix(A, n, m);
  85.  
  86.  
  87.     for (int i = 0; i < n; i++)
  88.         delete[] A[i];
  89.     delete[] A;
  90.  
  91.     return 0;
  92. }
RAW Paste Data