С двумерного массива получить вектор сум
Для двумерного массива размером N * M получить вектор из сумм отрицательных элементов каждого столбца матрицы. Как это сделать? Вот код ввода матрицы:
#include <iomanip>
#include <ctime>
using namespace std;
int main() {
setlocale(0, "");
srand(time(NULL));
int M, N, i, j;
cout << "Введите количество столбцов:" << endl;
cin >> M;
cout << "Введите количество строк:" << endl;
cin >> N;
double** A = new double* [M];
for (i = 0; i < M; i++) {
A[i] = new double[N];
}
for (i = 0; i < M; i++) {
for (j = 0; j < M; j++) {
A[i][j] = 5 - rand() % 10;
cout << setw(3) << A[i][j];
}
cout << endl;
}
}
Ответы (1 шт):
Автор решения: AR Hovsepyan
→ Ссылка
Вы запутались в размерах строк и столбцов, поэтому придайте их осмысленные имена, а не N и M, чтобы самим не запутаться и других не запутать. А если М есть размер столбцов, а Nразмер строк, тогда:
std::vector<int> sum(M);
for (j = 0; j < M; j++)
for (i = 0; i < N; i++)
if (A[i][j] < 0)
sum[j] += A[i][j];