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

  • 4
  • Недоступна
Экспрессивный рисунок, выполненный скромными средствами псевдографики — то же, что и минимализм в музыке. По крайней мере, так считают некоторые земные критики. Что ж, давайте внимать им, и рисовать. Давайте введем два числа m и n, и нарисуем прямоугольник из восьмерок, количество восьмерок в котором по высоте будет равняться m, а по ширине — n.
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (148)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Миша
Уровень 5, Россия
3 августа, 05:51
по привычке после изучения while добавлял в теле циклов i++ и j++ и не мог понять что не так )))) эти операции уже есть в for
hidden #2444652
Уровень 6
28 марта, 10:26
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); int number1 = Integer.parseInt(reader.readLine()); int number2 = Integer.parseInt(reader.readLine()); for ( int c = 0 ; c < number1 ; c ++) { System.out.println(); for (int i = 0; i < number2; i++) { System.out.print("8"); Что не так? Ввод : 3 4 вывод: 8888 8888 8888 Ошибка : Убедись, что ты вывел правильное количество строк.
Павел Соловьёв докер - механизатор в Порт
5 апреля, 22:33
первая строка получается пустой . перемести блок "переход на новую строку" после исполнения блока "вывод количества восьмерок в строке" ...
Тони
Уровень 10, Москва
20 февраля, 19:41
восьмёрки должны выводится как строка, т.е. в кавычки их брать System.out.print("8")...?
Fleckinger
Уровень 27
5 марта, 19:44
Да.
Алексей
Уровень 9
5 июля, 13:19
У меня сработало без кавычек
Илья
Уровень 7, Москва
18 февраля, 21:13
Всем, привет! Возможно это я такой тупой, но я очень много времени потратил на осознание того, что если ты вводишь цифры с клавиатуры, то не нужно объявлять переменную внутри главного цикла как это было в предыдущих задачках (я пока не понял почему). Если кто-то столкнется с подобной штукой, то объявляйте считывание с клавиатуры первым делом, а потом уж все манипуляции с вложенным циклом. Всем удачи!
Евгений
Уровень 9
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, тут избыточно. Но ничему мешать не должно.
Юрий
Уровень 10
26 декабря 2020, 17:58
Здесь очень доходчиво про for в forе.Мне помогло. https://www.youtube.com/watch?v=bAu5lFZGYRw
iDSDDR
Уровень 10, Молдова
25 января, 21:03
Спасибо, это короткое видео действительно очень помогло! всем советую посмотреть его, это так же поможет вам выполнить задание с таблицей умножения на цикле while
Дмитрий Системный администратор
8 февраля, 17:36
Лучший!
Алексей
Уровень 16
2 марта, 16:25
respect таким Юрам
Pablo
Уровень 16
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
Уровень 19, Рязань, Россия
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? Так и не понял(
Роман
Уровень 7, Санкт-Петербург
18 декабря 2020, 21:06
может в последнем принте нужно убрать 8 и оставить пустые скобки, тогда b можно назначить 2?
Denis
Уровень 14
26 марта, 11:58
Строгое и не строгое сравнение применяйте в соответствующих случаях.
Виталий Шепель
Уровень 11, Киев
26 июня, 15:29
Для Nikita Nikolaev Когда второй раз ставишь System.out.println("8"); печатает лишнюю 8. Если сделаешь просто перевод в новую строку (System.out.println();) все будет гуд.
Антон Володин
Уровень 27, Комсомольск-на-Амуре, Россия
18 октября 2020, 10:34
Прошел дальше по уровням. Вернулся дорешать нерешенные задачи. Решаются на ура)
Алина бухгалтер в аутсорсинговая компа
28 октября 2020, 13:12
думаю так же сделаю ... сама пропустила задачу на сортировку на 4 уровне. Не хотелось просто так задачу закрывать не понимая сути как работает код ....после того как погуглила и детально и поэтапно разобрала каждую деталь сортировки по методу "пузырька", задачу решила понимая и на УРА!!!!