4. Написать функцию для нахождения количества положительных чисел в каждом столбце двумерного динамического массива.
#include <iostream>
void countPositiveNumbersInColumns(int** matrix, int rows, int columns, int* positiveCount) {
for (int j = 0; j < columns; ++j) {
positiveCount[j] = 0;
for (int i = 0; i < rows; ++i) {
if (matrix[i][j] > 0) {
positiveCount[j]++;
}
}
}
}
int main() {
int rows, columns;
std::cout << "Enter the number of rows: ";
std::cin >> rows;
std::cout << "Enter the number of columns: ";
std::cin >> columns;
if (rows <= 0 || columns <= 0) {
std::cout << "Invalid array size." << std::endl;
return 1;
}
int** matrix = new int*[rows];
for (int i = 0; i < rows; ++i) {
matrix[i] = new int[columns];
}
std::cout << "Enter elements of the matrix:" << std::endl;
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < columns; ++j) {
std::cout << "Enter element at position (" << i + 1 << ", " << j + 1 << "): ";
std::cin >> matrix[i][j];
}
}
int* positiveCount = new int[columns];
countPositiveNumbersInColumns(matrix, rows, columns, positiveCount);
std::cout << "Number of positive numbers in each column:" << std::endl;
for (int j = 0; j < columns; ++j) {
std::cout << "Column " << j + 1 << ": " << positiveCount[j] << " positive numbers" << std::endl;
}
for (int i = 0; i < rows; ++i) {
delete[] matrix[i];
}
delete[] matrix;
delete[] positiveCount;
return 0;
}
