public class Solution {
public static int[][] array = new int[3][3];
public static void main(String[] args) {
Scanner console = new Scanner(System.in);
int sumWidth = Integer.MIN_VALUE;
int sumHeight = Integer.MIN_VALUE;
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array.length; j++) {
array[i][j] = console.nextInt();
}
}
for (int i = 0; i < 3; i++) {
int result = array[0][i] + array[1][i] + array[2][i];
if (sumWidth < result) {
sumWidth = result;
}
}
for (int i = 0; i < 3; i++) {
int result2 = array[i][0] + array[i][1] + array[i][2];
if (sumHeight < result2) {
sumHeight = result2;
}
if (sumHeight < sumWidth) {
System.out.println(sumHeight);
} else {
System.out.println(sumWidth);
}
}
}
}
Сысоев Александр
21 уровень
Почему выводит на экран сумму столбцов, а не минимальную из сумм?
Обсуждается
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
PixtaExpert
3 января 2022, 17:55полезный
Первое, у вас скобки лишние в цикле суммы строк. Захватывает if с выводом в консоль.
Второе, вы похоже запутались с наименованиями переменных ))
sumWidth - сумма по ширине (а находит сумму столбца)
sumHeigth - сумма по высоте (а находит сумму строки)
И последнее, если вы при нахождении минимума используете конечное значение Integer, надо использовать как исходное Integer.MAX_value, а не min.
соответственно поправить в условиях, где идут сравнения.
Но все советуют избегать его использования и принимать как точку отсчета первое полученное число. В вашем случае первую сумму.
+1