С циклами проблем не возникло, как-то легко дались, а вот по какому принципу работает вывод текста, так и не доперла. Объясните кто-нибудь на пальцах, как это все работает.
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
int m = Integer.parseInt(reader.readLine()), n = Integer.parseInt(reader.readLine());
//m - количество строк, n -количество знаков
String i = "8";
for ( int f =0;f < m;f++){
for(int g = 0; g<n; g++){
System.out.print(i);
}
System.out.println(" ");
Наталия
6 уровень
Решила, но не поняла
Решен
Комментарии (6)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Евгений Майдуров
15 октября 2019, 09:31
Первый цикл начинает новую строку, второй выводит 8 n раз в этой строке. Т.е. напечатали 8 n-раз, начали новую строку, в которой снова напечатали 8 n-раз,и так повторяем m-раз. Тут главное понимать различие между print и println
0
Наталия
16 октября 2019, 06:02
Я понимаю разницу, вроде бы. А вот как это работает в этом конкретном случае, никак не пойму. Зачем в конце пустая строка? (System.out.println(" ");). Что она дает именно в этом случае? На дурака ведь написала, и прокатило. Сплошная каша в голове, никак не устаканится.
0
Евгений Майдуров
16 октября 2019, 06:54полезный
а так System.out.println("") разве не прокатит? Думаю пробел в конце не обязателен. То, что вы сделали, это не пустая строка, а добавили пробел в конце строки (т.е. 888888888(пробел)) и перешли на новую, можно было и так, как вариант, System.out.print("\n")
+1
Ksenia VolkovaJava Developer в DXCMaster
16 октября 2019, 06:59полезный
Можно даже просто System.out.println();
+2
Наталия
16 октября 2019, 10:52
Спасибо, почти поняла уже. А почему это пишется после цикла, или можно в самом цикле написать?
0
Евгений Майдуров
16 октября 2019, 10:56
У вас все в цикле, просто тут не скопировали скобку закрывающую
0