Advertisement
totobac

Untitled

Jan 17th, 2021
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.49 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3. const int MAX_SIZE = 100;
  4. int **newMatrix(int matrix[][MAX_SIZE], int n, int m, int k)
  5. {
  6.     int** newMatrixx = 0;
  7.     newMatrixx = new int* [m];
  8.     for (int i = 0; i < m; i++)
  9.     {
  10.         newMatrixx[i] = new int[m];
  11.  
  12.         for (int j = 0; j < n; j++)
  13.         {
  14.             newMatrixx[i][j] = 0;
  15.         }
  16.     }
  17.  
  18.     for (size_t i = 0; i < n; i++)
  19.     {
  20.         for (size_t j = 0; j < m; j++)
  21.         {
  22.             if (matrix[i][j] % k == 0 )
  23.             {
  24.                 newMatrixx[i][j] = matrix[i][j];
  25.             }
  26.             else matrix[i][j] = INT16_MIN;
  27.         }
  28.     }
  29.  
  30.     for (size_t i = 0; i < n; i++)
  31.     {
  32.         for (size_t j = 0; j < m; j++)
  33.         {
  34.             if (newMatrixx[i][j] != INT16_MIN)
  35.             {
  36.                 while (!(newMatrixx[i][j - 1] != INT16_MIN || j == 0))
  37.                 {
  38.                     newMatrixx[i][j - 1] = newMatrixx[i][j];
  39.                     newMatrixx[i][j] = INT16_MIN;
  40.                 }
  41.             }
  42.         }
  43.     }
  44.  
  45.     return newMatrixx;
  46.    
  47. }
  48. void printNewMatrix(int matrix[][MAX_SIZE], int n, int m, int k)
  49. {
  50.     int** newMatrixx = newMatrix(matrix, n, m, k);
  51.     for (size_t i = 0; i < n; i++)
  52.     {
  53.         cout << endl;
  54.         for (size_t j = 0; j < m; j++)
  55.         {
  56.             if (newMatrixx[i][j] > INT16_MIN && newMatrixx[i][j] != 0)
  57.             {
  58.                 cout << newMatrixx[i][j] << " ";;
  59.             }
  60.         }
  61.     }
  62.  
  63.  
  64. }
  65. int main()
  66. {
  67.     int n, m, k;
  68.     int matrix[MAX_SIZE][MAX_SIZE];
  69.     cout << "Enter rows: ";
  70.     cin >> n;
  71.     cout << "Enter columns: ";
  72.     cin >> m;
  73.     for (size_t i = 0; i < n; i++)
  74.     {
  75.         for (size_t j = 0; j < m; j++)
  76.         {
  77.             cin >> matrix[i][j];
  78.         }
  79.     }
  80.     cout << "Enter K: ";
  81.     cin >> k;
  82.     printNewMatrix(matrix, n, m, k);
  83.  
  84. }
  85.  
  86.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement