Как найти максимальное значение во всей двумерной матрице (обработка) - PullRequest
0 голосов
/ 13 октября 2018

У меня есть двумерный массив, которому назначены случайные значения.Я ищу, чтобы найти максимальное значение в этом 2D массиве, чтобы я мог отобразить его в виде текста.

Я пытался использовать этот цикл для этого, однако он дает мне только последнее значение в массиве.

  for (iRow=0; iRow<10; iRow++)
  {
    for (iCol=0; iCol<4; iCol++)
    {
      iHighestMark=0;

      if (iArray[iRow][iCol]>iHighestMark)
      { 
        iHighestMark=iArray[iRow][iCol];

      }
    }
  }

Любой совет будет принят с благодарностью:)

Ответы [ 2 ]

0 голосов
/ 14 октября 2018

Как говорил p. phidot , вам нужно инициализировать переменную вне для цикла, иначе максимальное значение будет сбрасываться в ноль каждый раз, когда программа проходит цикл.Новый код решает проблему, но если все числа в матрице отрицательны, я рекомендую это изменение в коде:

iHighestMark = Integer.MIN_VALUE;

for (iRow = 0; iRow < 10; iRow++) {

   for (iCol = 0; iCol < 4; iCol++) {

      if (iArray[iRow][iCol]>iHighestMark) {

         iHighestMark=iArray[iRow][iCol];

      }
   }
}
0 голосов
/ 13 октября 2018
 iHighestMark=0;

 for (iRow=0; iRow<10; iRow++)
  {
    for (iCol=0; iCol<4; iCol++)
    {

      if (iArray[iRow][iCol]>iHighestMark)
      { 
        iHighestMark=iArray[iRow][iCol];

      }
    }
  }
...