Вы находитесь на странице: 1из 3

Для решения данной задачи, разработаем машину Тьюринга, которая

будет умножать заданное натуральное число на 2.


Состояния автомата:
 q0: Начальное состояние.
 q1: Состояние, когда машине необходимо умножить цифру на 2.
 q2: Состояние, когда машина переносит единицу на следующую
позицию.
Алфавит:
 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, B}: Цифры от 0 до 9 и символ B для
обозначения пустой ячейки.
Таблица переходов:
Состояние Входной символ Выходной символ Состояние Движение
q0 0 0 q1 R
q0 1 1 q1 R
q0 2 2 q1 R
q0 3 3 q1 R
q0 4 4 q1 R
q0 5 5 q1 R
q0 6 6 q1 R
q0 7 7 q1 R
q0 8 8 q1 R
q0 9 9 q1 R
q0 B B q1 R
q1 0 0 q1 R
q1 1 2 q2 R
Состояние Входной символ Выходной символ Состояние Движение
q1 2 4 q2 R
q1 3 6 q2 R
q1 4 8 q2 R
q1 5 0 q2 R
q1 6 2 q2 R
q1 7 4 q2 R
q1 8 6 q2 R
q1 9 8 q2 R
q1 B B q2 R
q2 0 0 q2 R
q2 1 1 q2 R
q2 2 2 q2 R
q2 3 3 q2 R
q2 4 4 q2 R
q2 5 5 q2 R
q2 6 6 q2 R
q2 7 7 q2 R
q2 8 8 q2 R
q2 9 9 q2 R
q2 B B q2 R
q2 _ _ q0 L

Где:
 R: Сдвиг вправо.
 L: Сдвиг влево.
 _: Пустой символ.
Процедура умножения:
1. В начале, слева от исходного числа добавляем пустой символ B.
2. Запускаем машину Тьюринга в состоянии q0.
3. Машина будет смотреть на крайнюю левую цифру числа.
4. Если цифра равна B, то умножение закончено, и машина
останавливается.
5. Если цифра от 0 до 9, то она умножается на 2 (переход в состояние q1).
6. В состоянии q1, машина перемещается вправо на одну позицию и
переносит единицу на следующую позицию (переход в состояние q2).
7. В состоянии q2, машина продолжает перемещаться вправо до конца
числа, умножая каждую цифру на 2.
8. По достижении пустого символа B в конце числа, машина
возвращается в начальное состояние q0 и останавливается.
Таким образом, данная машина Тьюринга будет умножать заданное
натуральное число на 2.

Вам также может понравиться