Написать ** C++:в матрице 4*5 замените ** -2 столбцы с положительными суммами элементов,...

0 голосов
83 просмотров

Написать на C++:в матрице 4*5 замените на -2 столбцы с положительными суммами элементов, а затем в качестве первого вставьте столбец из минимальных элементов соответственных строк


Информатика (23 баллов) | 83 просмотров
0

1. На -2 заменить значения всех элементов в столбце?2. В качестве первого ... вставьте столбец из минимальных элементов..вообще не понял второй вопрос. Объясни - сделаю.

0

1. Да2. Я так понял, что ищешь в каждой строке минимальный элемент и его вставляешь.

0

таки все равно не понял второй :)

0

В каждой строке ищешь минимальный элемент и из них составляешь столбец.

0

В каждой строке ищешь минимальный элемент и заменяешь им первый элемент строки. Так понятнее?

Дан 1 ответ
0 голосов

Если я все правильно понял, то так:

#include

#include

/*

Написать на C++:в матрице 4*5 замените на -2 столбцы с положительными суммами элементов,  

а затем в качестве первого вставьте столбец из минимальных элементов соответственных строк

*/

#define N 4 // строки

#define M 5 // столбцы

int main()

{

   int  

       matrix[N][M],

       sum(0);

   for(int i = 0; i < N; i++)//инициализируем матрицу.

   {

       for(int j = 0; j < M; j++)

       {

           std::cin >> matrix[i][j];

       }

   }

   for(int i = 0; i < N; i++)//выводим начальную матрицу

   {

       for(int j = 0; j < M; j++)

       {

           std::cout

       }

       std::cout

   }

   for(int j = 0; j < M; j++)//выполняем 1 задание

   {

       for(int i = 0; i < N; i++)

       {

           sum+=matrix[i][j];

       }

       if(sum)

       {

           for(int i = 0; i < N; i++)

           {

               matrix[i][j] += -2;

           }

       }

   }

   int minimal(0);

   for(int i = 0; i < N; i++)//выполняем второе задание

   {

       minimal = std::min(matrix[i][0], matrix[i][M-1]);

       matrix[i][0] = minimal;

   }

   for(int i = 0; i < N; i++)

   {

       for(int j = 0; j < M; j++)

       {

           std::cout

       }

       std::cout

   }

}


p.s я не заморачивался насчет читабельности и оптимизации кода, ибо делаю не для себя. Но, по-моему, должно работать.

В противном случае пиши мне, исправлю.

(4.0k баллов)