Предмет: Информатика, автор: pozharovartyom

Задача на C++. Двумерный массив 5*5. Для каждой строки заданной матрицы определить и напечатать сумму элементов столбцов с чётными номерами. Для каждого столбца заданной матрицы найти и напечатать максимальный элемент.

Ответы

Автор ответа: lubkovskyvyacheslav
1

Решение данной задачи будет выглядеть вот так:

int main()

{

setlocale(LC_ALL, "Rus");  

int A[5][5] = {

 {10, 4, 5, 34, 12},

 {32, 6, 23, 15, 22},

 {10, 4, 7, 32, 6},

 {3, 22, 21, 15, 8},

 {9, 4, 31, 19, 5}  

};  

int n = 5;

int sum = 0;

int max = -1;  

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

{

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

 {

  cout << A[i][j] << "\t";

 }

 cout << endl;  

}

cout << endl;

cout << "Сумма элементов столбцов с чётными номерами:" << endl;

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

{

 sum = 0;

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

 {

  if (j % 2 == 0)  //Проверка на парность "j % 2 == 0" - остаток от деление на 2 равен 0

  {

   sum += A[i][j];

  }    

 }

 cout << i+1 << ": " << sum << endl;

}

cout << endl;  

cout << "Максимальный элемент для каждого столбца:" << endl;

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

{

 max = -1;

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

 {

  if (max <= A[i][j])

  {

   max = A[i][j];

  }

 }

 cout << j + 1 << ": " << max << endl;

}

cout << endl;  

   return 0;

}


babaikapugaika: Спасибо Вам огромное, но всё же есть один небольшой вопрос. Почему max присваивается -1, подскажите, пожалуйста!
babaikapugaika: Пожалуйста, подскажите, как заполнять в данной задаче массив с клавиатуры?
lubkovskyvyacheslav: max при присваивается -1, для того, чтобы оно гарантировано сработало. То есть, оно в самом начале выступает лишь для того, чтобы дать толчок к поиску числа. Единственное, что если вы будете находить числа, в которых числа могут быть отрицательными, вам max надо присвоить оооочень маленькое число, например " INT_MIN". По обратному принципу работает и поиск минимального числа, только на этот раз ему надо присвоить как можно большее число.
lubkovskyvyacheslav: Заполнить массив можно так:
cout << rowNum + 1 << "-я строка ";
cout << columnNum + 1 << "-й столбец: ";
cin >> А[rowNum][columnNum];
Похожие вопросы
Предмет: Русский язык, автор: sbelozova
Предмет: Алгебра, автор: pushkin199