Задачу решил при помощи добрых людей в коментах плюс тупым подбором значений и знаков. Но хотелось бы понять как это работает((( Вкратце, не вижу почему у нас второй цикл печатает 8 в первом круге 1, во втором 2 в третьем 3 и т.д. Распишу свой ход мыслей (скорее всего не правльный): Круг 1: - создаётся int a = 0; - Условие "a<10" соблюдается (0<10), входим в первый цикл, где встречаем сразу второй цикл; - создаётся переменная int b = 0; - Условие "b<=a" соблюдается (0=0), входим во второй цикл, который печатает одну 8; - После завершения второго цикла переменная b = 1; - Продолжаем первый цикл, который переносит нас на новую строку и увеличивает а на 1, теперь "а=1"; Круг 2 - int a = 1; Условие "a<10" соблюдается (1<10), входим в первый цикл, где встречаем второй цикл; - У нас int b = 1; - Условие b<=a, соблюдается (1<=1), входим во второй цикл, который печатает одну 8; - После завершения второго цикла переменная b = 2; - Продолжаем первый цикл, который переносит нас на новую строку и увеличивает а на 1, теперь "а=2"; Вот тут где-то я туплю, ведь по моей логике, должно быть две 8 в две строки вот так: 8 8 А он выводит вот так: 8 88. Почему он второй цикл проиграл 2 раза непонятно. Единственное предположение пока что после каждого круга, переменная "int a" увеличивается на 1, а вот переменная "int b" в каждом круге начинается с 0 и выполняется до тех пор, пока она перестанет соответствовать условию "b<=a". И перенос на новую строку происходит только тогда, когда второй цикл не перестанет выполняться. ПаМаГИте))))