отгтгзтэш4сптз4ш птзшс4птзш 4пгт4п зштп 4шзькшп 0ьшкп0 ь4псшьп4сшьпс4шьп4сзт3есшп4сшзт4пш0тш1зс4тшзс4пш9т кпшз 4птшс3птш0сет0шсе3т0ш3сетшзсе3зшсп3шзпс3тшзсп1тшзсп41е41сшлпс4зтлзпк1тлп клзтп3лзтпскшзтсп3штсшп3зштсптш0се4т0с3ешт03естшьше0сштзп4шьзп41ьшзп4шьзмп41шзе41пьшп4с1шьешь4слпзсьльзп4слзьпс4лзп4слзп14шьзп4ьшза41ьзл14спсозтсп14отач41лчьач144отза4о золзак о зско з4чтозакчтоопчктшп 3 от по з ау оза к озмк жокож йктжмкйтопкйтоской окошко ж кж окно жакйотзау?тозпйк шьзак ьшхак?шлшзткагозш41шпьшзкп гзтакшьзшпк1ьзш1пкшьх
2. → 3 [сдвинуться вправо, перейти на строку 3] — в вопросе опечатка?
3. → 4 [сдвинуться вправо, перейти на строку 4]
4. ? 5;2 [если в текущей ячейке нет метки, перейти на строку 5, иначе вернуться на 2]
5. ← 6 [сдвинуться влево, перейти на строку 6]
6. V 7 [поставить метку, перейти на строку 7]
7. ! [закончить работу]
Программа делает следующее: переходит на метку вправо, шагами по две ячейки идёт вправо, пока не дойдёт до пустой ячейки, возвращается на ячейку влево, ставит там метку и заканчивает работу.
Пусть метки расположены в ячейках 0 - (n-1), каретка под ячейкой 0.
Тогда сначала каретка окажется подячейкой 1, сделает [n/2] шагов по 2 вправо ([x] — целая часть x), оказавшись под ячейкой 1 + 2 * [n/2], вернётся на ячейку влево (ячейка 2 * [n/2]) и поставит там метку.
Если n было четным, будут заполнены ячейки от 0 до n, каретка под ячейкой n
Если n было нечетным, будут заполнены ячейки от 0 до n - 1, каретка под ячейкой n - 1