Исполнитель Т1000 «живёт» на бесконечной в обе стороны ленте, разделенной на клетки (одна из клеток является текущей, в ней находится исполнитель). Система команд Т1000 включает следующие:
влево − переместиться на одну клетку влево;
вправо − переместиться на одну клетку вправо;
записать X − записать в текущую клетку число Х.
если X команда − выполнить команду, если в текущей клетке записано число Х.
пока X команда − выполнять команду, пока в текущей клетке записано число X.
Команда определяется как одна из команд, указанных выше, либо как последовательность команд. При записи программы такие вложенные команды заключены в фигурные скобки.
Дана программа:
пока 1 влево
пока 0 влево
влево
пока 1
{вправо
записать 0}
пока 0 вправо
влево
записать 1
влево
пока 0 влево
влево
Она выполняется начиная с крайней правой клетки с числом 1 в следующей начальной конфигурации (все остальные ячейки бесконечной ленты заполнены нулями и не показаны на схеме):
Как будет выглядеть лента после остановки программы?
1) 010001111110
2) 010100111110
3) 000111110010
4) 010110011110
Исполнитель находится в крайней правой клетке с числом 1. Начинаем выполнение программы. Пока в клетке в которой находится Т1000 записано число 1 исполнитель передвигается влево. Как только в ячейке ленты исполнитель встретит 0 он начнёт выполнять следующую команду "пока 0 влево". Продолжая выполнять команды и дойдя до конца, увидим, что лента в конце будет выглядеть так: 010110011110.
Ответ: 4.

