с задачами задача 12.14, 12.17​


с задачами задача 12.14, 12.17​

belnata84 belnata84    2   29.06.2021 22:13    2

Ответы
ksu131287 ksu131287  29.07.2021 22:15

12.14

Функциональная схема (программа): q_11 \rightarrow q_11R, q_1a_0 \rightarrow q_01

12.17

смотри объяснение

Объяснение:

12.14

Алфавит внутренних состояний Q = {q_1, q_0} — рабочее состояние и остановка соответственно.

Начальное положение — над первым символом слова.

Будем последовательно считывать символы на ленте, двигаясь по ней слева направо. Если считали 1, просто переходим в соседнюю ячейку:

q_11 \rightarrow q_11R (R (right) — то же самое, что и П на скриншоте)

Если считали пустой символ a_0, то мы попали в ячейку сразу после ячейки с последним символом заданного слова. Заменяем этот пустой символ на единицу и останавливаемся:

q_1a_0 \rightarrow q_01

Построили машину Тьюринга, которая слово вида a_0\underbrace{11...11}_{n}a_0 преобразовывает в слово вида a_0\underbrace{11...11}_{n}1a_0

12.17

Внешний алфавит A = {a_0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0} — пустой символ и все цифры десятичной системы счисления.

Алфавит внутренних состояний Q = {q_1, q_0} — рабочее состояние и остановка соответственно.

Функциональная схема (программа):

q_1i \rightarrow q_0(i-1) (для i = 1, 2,..., 9)

q_10 \rightarrow q_19L (L (left) — то же самое, что и Л на скриншоте)

q_1a_0 \rightarrow q_2a_0R

q_20 \rightarrow q_2a_0R

q_2i \rightarrow q_0i (для i = 1, 2,..., 9)

Начальное положение — над последним символом слова на входе (как написано в тексте на скриншоте, стандартное положение).

Пояснение к работе построенной машины. Если отнимание единицы из последней цифры не требует перехода 10-ти из разряда слева, то просто вычитаем и останавливаемся (первая команда). Но если последняя цифра — ноль, то после замены его на 9 придется перейти к символу слева  (вторая команда) и с ним повторить все те же действия, что и с последним символом. И так до тех пор, пока не встретим символ, отнимание единицы из которого не требует перехода 10-ти из разряда слева. Короче говоря, все как при обычном вычитании в столбик. Последние три команды убирают (заменяют на пустые символы) ведущие нули, если они, конечно, появились.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Другие предметы