#processing
#обработка
Вопрос:
Я новичок в программировании! Я пытаюсь создать шахматную доску, используя Processing (язык, использующий синтаксис, аналогичный Java).
Почему это не работает?
void setup(){
//5.b In setup() set the size to 350, 350
size(350,350);
for (int y = 0; y < 8; y = y ){
for (int x = 0; x < 8; x ){
if ((y x 1) % 2 == 0 ){
fill(255);
}else{
fill(0);
}
rect(50*x,50*y,50,50);
}
}
}
```
Комментарии:
1. Не могли бы вы показать, что вы ожидаете увидеть на экране, и что получается вместо этого?
Ответ №1:
Программа не работает из-за этого цикла for, который выполняется вечно:
for (int y = 0; y < 8; y = y ){
Причина в том, что y = y
назначение выполняет следующее:
- он оценивает значение правой стороны, которое будет
y
- он обрабатывает оператор , увеличивая значение
y
- он обрабатывает присвоение, то есть присваивает
y
значение, вычисленное на шаге 1, котороеy
Следовательно, значение y
never не изменяется, и цикл for никогда не завершается.
Измените его на это, и он должен работать:
for (int y = 0; y < 8; y ){
Комментарии:
1. Вчера использовал 30 минут и не мог понять, почему это не сработает. Спасибо, что решили мою проблему!