Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <locale>
- using namespace std;
- int** CreateMatrix(int n, int m)
- {
- int** matrix = new int* [n];
- for (int i = 0; i < n; i++)
- matrix[i] = new int[m];
- return matrix;
- }
- void InitializeMatrix(int** matrix, int n, int m)
- {
- for (int i = 0; i < n; i++)
- for (int j = 0; j < m; j++)
- {
- cout << "Введите matrix[" << i << "][" << j << "]: ";
- cin >> matrix[i][j];
- }
- }
- void PrintMatrix(int** matrix, int n, int m)
- {
- for (int i = 0; i < n; i++)
- {
- for (int j = 0; j < m; j++)
- cout << matrix[i][j] << " ";
- cout << endl;
- }
- }
- int** GetArray(int** matrix, int n, int m, int& size)
- {
- int count = 0;
- for (int i = 0; i < n; i++)
- for (int j = 0; j < m; j++)
- if (matrix[i][j] == 0)
- count++;
- int** array = new int*[count];
- size = count;
- count = 0;
- for (int i = 0; i < n; i++)
- for (int j = 0; j < m; j++)
- if (matrix[i][j] == 0)
- array[count++] = &matrix[i][j];
- return array;
- }
- int main()
- {
- setlocale(LC_ALL, "rus");
- int n, m;
- cout << "Введите количество строк матрицы: ";
- cin >> n;
- cout << "Введите количество столбцов матрицы: ";
- cin >> m;
- int** matrix = CreateMatrix(n, m);
- InitializeMatrix(matrix, n, m);
- cout << "Созданная матрица: " << endl;
- PrintMatrix(matrix, n, m);
- int size = 0;
- int** array = GetArray(matrix, n, m, size);
- cout << "Массив указателей на нулевые элементы, созданной матрицы: ";
- for (int i = 0; i < size; i++)
- cout << array[i] << " ";
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement