На ленте машины Поста расположены два массива. Составьте программу стирания того из массивов который имеет большее количество меток

На ленте машины Поста расположены два массива. Составьте программу стирания того из массивов который имеет большее количество меток
Гость
Ответ(ы) на вопрос:
Гость
Машина Поста - тоже самое что и машина Тьюринга, только на ленте могут быть записаны 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 проверки.Ну не знаю думаю так??)))
Не нашли ответ?
Ответить на вопрос
Похожие вопросы