#java #processing
#java #обработка
Вопрос:
В настоящее время я создаю шахматную доску, и мне нужно присвоить каждой другой ячейке значение 1 или 0 с помощью двойного цикла for . Мой код выглядит следующим образом: (Обработка / Java)
int[][] board = new int [8][8];
for (int i = 0; i < 8; i ) {
for (int j = 0; j < 8; j ) {
board[i][j] = ?;
println(board[i][j]);
}
}
Комментарии:
1. Перед циклами:
int value = 0;
, в циклах:board[i][j] = (value ) % 2;
2. На самом деле вы не хотите выполнять цикл, когда первая строка переходит во вторую строку, вы повторяете 0 или 1, потому что в противном случае первая строка и вторая строка будут равны.
3. Конечно, вы не хотите использовать
println
для каждого внутреннего цикла.4. почему вы не используете double в начале?
5. Желаемый результат — перебирать доску, чередуя 0 и 1, чтобы в конечном итоге назначить цвета каждой ячейке в зависимости от значения ячейки.
Ответ №1:
int[][] board = new int[8][8];
for (int i = 0; i < 8; i ) {
for (int j = 0; j < 8; j ) {
board[i][j] = (j i) % 2;
System.out.println(board[i][j]);
}
}
Ответ №2:
Похоже, вы пытаетесь назначить цвет шахматной доске.
0 - Black
1 - White
что вы можете сделать, так это,
if((i j) % 2 == 0)
arr[i][j] = 0;
else
arr[i][j] = 1;
Комментарии:
1. «Похоже, вы пытаетесь …» вы клипер MS Office? : P
2. Вы можете встроить это
if
в justarr[i][j] = (i j) % 2
(так же, как и в другом ответе).3. да, добавлено if, чтобы быть более понятным в части объяснения @luk2302