Рисуем прямоугольник

  • 4
  • Недоступна
Экспрессивный рисунок, выполненный скромными средствами псевдографики — то же, что и минимализм в музыке. По крайней мере, так считают некоторые земные критики. Что ж, давайте внимать им, и рисовать. Давайте введем два числа m и n, и нарисуем прямоугольник из восьмерок, количество восьмерок в котором по высоте будет равняться m, а по ширине — n.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (136)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Евгений 5 уровень
29 декабря 2020, 14:05
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String number1 = reader.readLine();
        String number2 = reader.readLine();
        int in1 = Integer.parseInt(number1);
        int in2 = Integer.parseInt(number2);
        String s = "8";
        for (int x = 0; x < in1; x++){
            System.out.println();
            for (int y = 0; y < in2; y++){
                System.out.print(s);
            }
        }
И почему же мои лыжи не едут?
Dmitry Parhots 6 уровень, Минск
1 января, 14:45
Внимательно посмотри что выводит в консоль. Первая команда в первом цикле это условный "пробел/перенос". Это выражение выполнится до того, как программа зайдёт во второй цикл. Расположи принт переноса после второго цикла. Ну и стриг s = 8, тут избыточно. Но ничему мешать не должно.
Юрий 9 уровень
26 декабря 2020, 17:58
Здесь очень доходчиво про for в forе.Мне помогло. https://www.youtube.com/watch?v=bAu5lFZGYRw
Pablo 11 уровень
16 декабря 2020, 11:57
Итак, у нас один цикл в другом. 1)Первый (главный) отвечает за кол-во строк: for (int i = 1; i <= m; ++i); Число m - которое к нам поступает первым. Соответственно этот цикл повторится столько раз, пока значение i не станет равным значению m (в нашем случае 3, что значит три раза) 2)Второй цикл отвечает за "начинку" этих строк: for (int j = 1; j <= n; ++j) System.out.print(8); Число n - поступает к нам вторым. И этот цикл будет выводить в строчку цифры "8" без пробелов и переноса столько раз, пока значение j не станет равным значению n (в нашем случае 4, что значит строчки будут иметь по 4 цифры "8") 3)Общий вид имеем: for (int i = 1; i <= m; ++i){ for (int j = 1; j <= n; ++j) { System.out.print(8); } System.out.print("\n"); } Последняя строчка - System.out.print("\n") делает перенос на следующую строчку после каждого завершения первого цикла (подробнее про \n в теме про экранирование символов). Надеюсь кому то помог, а не только запутал ещё больше)
Vedro Nalimov 8 уровень, Москва
25 ноября 2020, 13:36
3, с..ка, месяца! 3!!! я пытаюсь понять, как работают циклы. ИНИ..УЯ. и задачи решаю, и видео смотрю, вроде бы понял. на следующий день все с чистого листа. как в анекдоте:"Доктор, я - феномен?." Вы, батенька, му..озвон"
Regina Bulanova 18 уровень, Рязань
2 декабря 2020, 10:15
Возможно, вы могли бы уточнить, что именно вам непонятно? Тогда участники вам могли бы разъяснить эти моменты.
Nikita Nikolaev 6 уровень, Санкт-Петербург
15 ноября 2020, 17:00
Решил таким образом: for (int a = 1; a <= m; a++) { for (int b = 2; b <= n; b++) { System.out.print("8"); } System.out.println("8"); Пытался сначала написать b = 1, но было больше строк на одну. Подскажите, почему b = 2, а не 1? Так и не понял(
Роман 6 уровень, Санкт-Петербург
18 декабря 2020, 21:06
может в последнем принте нужно убрать 8 и оставить пустые скобки, тогда b можно назначить 2?
Антон Володин 19 уровень, Комсомольск-на-Амуре
18 октября 2020, 10:34
Прошел дальше по уровням. Вернулся дорешать нерешенные задачи. Решаются на ура)
Алина бухгалтер в аутсорсинговая компа
28 октября 2020, 13:12
думаю так же сделаю ... сама пропустила задачу на сортировку на 4 уровне. Не хотелось просто так задачу закрывать не понимая сути как работает код ....после того как погуглила и детально и поэтапно разобрала каждую деталь сортировки по методу "пузырька", задачу решила понимая и на УРА!!!!
Alex 9 уровень, Москва
10 октября 2020, 08:13
7 попыток. Ошибки: путал строки и столбцы, начинал циклы то с 0, то с 1. Похоже, что вывод пустой строки - тоже ошибка, хотя по результатам это не видно.
stepa113 14 уровень, Москва
4 декабря 2020, 06:32
Да, кстати, спасибо. Если делать переход на новую строку в теле внешнего цикла, но до внутреннего, о задача не проходит проверку.
Сергей Мельяда 13 уровень, Санкт-Петербург
8 октября 2020, 09:52
Решил задачу, с помощью 2-х циклов for(int ........){ for(int.........) System.out.print("...."); System.out.println("........"); Но вопрос в том, что я не понял как она сработала 😁 буду разбираться.
Марина 6 уровень, Санкт-Петербург
6 октября 2020, 15:33
Задачу можно решить не используя вложенные циклы, достаточно одного цикла for и одной проверки if.
for (int i = 1; i <= m * n; ++i) {
    System.out.print(8);
    if (i % n == 0)
        System.out.print("\n");
}
накидайте плюсов для ачивки плз)
Evgeniy 7 уровень, The Pas
23 декабря 2020, 04:32
ya bu zmenil if (i % n == 0) na if (i == n)
Владислав 7 уровень, кострома
22 сентября 2020, 13:49
В циклах нужно использовать разные переменные int для выполнения условия int a, i; for (a = 1; a <= m; a++){ for (i = 1; i <= n; i++)