Коллеги, нужна помощь. Java занимаюсь 4 часа. При решении данной задачи столкнулся с проблемой. Почему мне не удается добиться в конце прямоугольника "ББББ..." если в 13-й строчке явное условие (либо 0, либо 9)? Казалось бы, условие верное, но явно где-то ошибка, а я найти не могу. Знаю, что можно и более корректно сделать через цикл в цикле + условие, но мне хочется решить данную задачу именно так (цикл в цикле в цикле). Конечно это далеко не самый оптимизированный вариант, но тем не менее работать должно, но почему-то не работает.
P.S. Если я уберу комментарий с 12-й строки, то мне выведет "Б Б" в консоли. Но почему? Если условие цикла задано при hight меньше 10 и при каждой новой итерации данной переменной присваивается 5, а это меньше 10. Почему не происходит зацикливания? Заранее благодарю!
package com.javarush.task.pro.task04.task0405;
/*
Незаполненный прямоугольник
*/
public class Solution {
public static void main(String[] args) {
int height = 0;
int width = 0;
while (height < 10) {
//height = 5;
while (height == 0 || height == 9) {
width = 0;
while (width < 20) {
System.out.print('Б');
width++;
}
System.out.println();
height++;
}
while (height > 0 && height < 9) {
System.out.print("Б");
width = 0;
while (width < 18) {
System.out.print(' ');
width++;
}
System.out.print("Б");
System.out.println();
height++;
}
height++;
}
}
}