на ленте машины Поста расположены два массива. Составьте программу стирания того из массивов который имеет большее количество меток
Машина Поста - тоже самое что и машина Тьюринга, только на ленте могут быть записаны 0 или 1, а состояние определяется номером, действием и номером нового состояния.
Действия
Х - записать 0
V - записать 1
? а; b - если в ячейке 0 то а, иначе b
! - стоп
-> и <- - перемещение по ленте
Двигаем массив к метке, т.е. было 011101, а будет 001111
Алгорим:
1. Пробегам все единицы пока не встретим 0
1. ->2
2. ?3;1
2. Пробегаем теперь все нули, пока не найдем метку
3. ->4
4. ?3;5
3. Находим метку и возвращаемся на одну клетку назад чтобы записать ноль
5. <-6
6. V7
4. Обратно бежим по нулям пока не встретим 1 из массива
7. <-8
8. ?7;9
5. Встречаем 1 -стираем. Но нужно проверить что у нас слева от 1. Если 0, то эта последняя единица и мы заканчиваем программу, а если 1 то возвращаемся обратно.
9. X10
10. <-11
11. ?12;3
12. !
Рекомендую проверить на примерах. Я человек ленивый - делаю 2 проверки.Ну не знаю думаю так??)))
