public class Solution {
public static int[][] result = new int[10][];
public static void main(String[] args) {
int[][] array = new int[10][];
int r = 1;
for (int i = 0; i < 10; i++){
result[i] = new int[i+1];
for (int j= 0; j < result[i].length; j++) {
result[i][j]= i+j;
System.out.print(result[i][j] + " ");
}
System.out.println();
}
}
}
Антон
2 уровень
можете поэтапно объяснить этот код
Решен
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Денис Enterprise Java Developer
3 марта 2023, 19:45полезный
Какие неизвестные слова в этом коде ты видишь? попробуй их погуглить. Разберись как работает каждая отдельная строка, и все станет более-менее ясно.
В целом все просто:
В классе Solution есть статический двухмерный массив result, в нем может храниться 10 массивов. Тип данных там integer/
Потом начинается метод main в котором непонятно зачем создаётся такойже в точности массив (далее в коде не фигурирует).
Создаётся ненужная же переменная r со значением 1, так же в коде дальше не фигурирует.
Дальше начинается цикл от 0 до 9 внутри которого для i-ого элемента массива result создаётся новый массив размерностью i + 1. Т.е. для 0 это будет массив на 1 элемент, для 1 на два и так далее.
Потом начинается вложенный цикл, от нуля до длины новосозданного массива - 1 (очевидно, чтобы не получить IndexOutOfBoundException).
Во вложенном цикле, каждому элементу новосозданного массива присваивается значение, равное сумме текущих индексов. Это же значние выводится на экран, за ним следует пробел.
По завершению вложенного цикла делается перенос строки и начинаем по новой.
Судя по всему будет нарисована нисходящяя лесенка из цифр.
+1