Что добавить в код чтобы он работал по заданию?
Что мне нужно дописать в коде чтобы выполнялось условие в котором каждый отрицательный элемент матрицы действительных чисел размером 4х8 заменить суммой положительных элементов той строки, в котором размещен этот элемент.
#include <iostream>
#include <ctime>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
using namespace std;
int main()
{
setlocale(LC_ALL, "Ukr");
const int n = 4, m = 8;
printf("Була:\n");
int mat[n][m];
srand(time(NULL));
for (int i = 0; i < n; i++)
for (int j = 0; j < m; j++)
mat[i][j] = rand() % 30 - 5;
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
printf("%d ", mat[i][j]);
printf("\n");
}
printf("\nСтала:\n");
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
printf("%d ", mat[i][j]);
printf("\n");
}
return 0;
}
Я только начал изучать С++.
Ответы (1 шт):
Автор решения: Vitaliy
→ Ссылка
Я понял как написать код к моему заданию
#include <iostream>
#include <iomanip>
#include <stdlib.h>
#include <ctime>
using namespace std;
int main()
{
setlocale(LC_ALL, "Ukr");
srand((int)time(0));
const int n = 4, m = 8;
double a[n][m], sum_pos;
printf("Була:\n");
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
a[i][j] = 0.1 * (rand() % 201 - 100);
cout << setw(7) << setprecision(1) << fixed << a[i][j];
}
printf( "\n");
}
printf("Стала:\n");
for (int i = 0; i < n; i++)
{
sum_pos = 0.;
for (int j = 0; j < m; j++)
if (a[i][j] > 0.) sum_pos += a[i][j];
for (int j = 0; j < m; j++)
{
if (a[i][j] < 0.) a[i][j] = sum_pos;
cout << setw(7) << setprecision(1) << fixed << a[i][j];
}
printf ("\n");
}
system("pause");
return 0;
}