Почему когда объявляю переменную j для второго цикла это не работает?
int i = 1;
int j = 1;
while (i <= 10)
while (j <= 10)
Когда переменную j объявляю внутри первого цикла это работает?
int i = 1;
while (i <= 10)
int j = 1;
while (j <= 10)
Разве переменную не должно быть видно для всех циклов если она объявляется перед всеми циклами?
Решая задачу с таблицей умножения весь мозг сломал, в первом случае у меня выводилась только одна строка, во втором случае вся таблица.
Вроде бы простое задание, но в комментариях как минимум 5 разных решений.
И мое решение не совпало ни с одним из них, включая правильное из "Помощи":
int n = 0;
int k = 0;
while(n < 10) {
while(k < 9){
System.out.print("S");
k++;
}
System.out.println("S");
k = 0;
n++;
}
Но нужную картинку оно выводит, и при проверке зачлось:) "Правильное " решение через печать строки из 10 букв "S" мне тоже пришло в голову сразу, но я вспомнил лекцию, где говорилось о миллионах значений и захотелось чуть в более общем виде решить задачку.
Потому что когда объясняли за сканер, в конце добавили что он нам в принципе не понадобится))). Привыкай к тому что здесь нет разжевываний как в школе. Гугли и начни с BufferedReader=>Inputstreamreader=>System.in. Без этих знаний дальше идти нет смысла
В последней задаче условие " Программа должна выводить квадрат из 10х10 букв S. "
}
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
}
Как по мне это вообще не квадрат xD
как по мне квадрат более похожим получается 10x4 )))
Ну или на ящик похоже )))
}
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
SSSSSSSSSS
}
В задаче просто надо сделать вложенный цикл в котором без перевода строки будет напечатано 10 раз S, а итерация основного цикла просто переводит на новую строку)
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ