RomantegЯ увидел, что весь путь состоит из повторяющихся кусков. Один кусок включает в себя действия: закрасить первую клетку; пропустить ряд клеток; остановиться. Дальше я увидел, что “пропустить ряд клеток” вырастает на одну клетку после каждого куска. Дальше я ввёл эту переменную nn, которая и следит за тем, сколько клеток нужно пропустить в куске. А дальше можно было использовать range(), но range() есть не во всех языках, поэтому я решил range() заменить на счётчик пройденных клеток и назвал его n. Таким образом, на каждом куске счётчик пропущенных клеток обнуляется, а количество клеток, которые надо пропустить, наращивается на одну клетку. И когда счётчик на куске достигает количества пропускаемых клеток, кусок завершается остановкой и цикл переходит к следующему куску. В следующем куске устанавливается: сколько клеток надо в нём пропустить; счётчик пройденных клеток куска устанавливается в ноль; первая клетка куска закрашивается. И дальше всё повторяется, как в предыдущем куске.
Не могу понять принцип как вы пришли к такому решению, что нужно использовать зависимость n от nn и что nn задает границу, а затем n еще и сбрасывается… наверное, это приходит с опытом.
Идёт обработка каждого куска одним и тем же способом.
RomantegДа, ты видишь этот путь целиком, а нужно его раскладывать на одинаковые кусочки. Потом для кусочка надо писать программку, а потом эту программку повторять. И чтобы видеть, из каких одинаковых кусочков состоит якобы неразделимая и целостная сущность, нужно тренироваться. Человек состоит из частей тела. Человек состоит из тканей. Человек состоит из клеток. Человек состоит из атомов. Вот это разделение целостной сущности на составляющие части. То есть делить можно по-разному. Когда делаешь программу, делить целостную сущность нужно на максимальные одинаковые куски. Если ты поделишь путь из клеток на клетки, то ты ничего не получишь. Но если ты поделишь путь из клеток на повторяющиеся фрагменты пути, то ты можешь для одного фрагмента пути написать алгоритм, а потом в цикле вызывать его. И путь будет обрабатываться одинаковыми порциями.
наверное, это приходит с опытом.
Всё это написано в книге “Программирование для математиков”. Фактически, я тебе просто по памяти переписываю сюда эту книгу. Там нужно всё досканально читать и во всё вникать. А если ты всё наискосок прочитал, то ты время на это потратил и не узнал ничего.