Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
METOD_UK_K_PRAKT_POKS_EML.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.28 Mб
Скачать

3 Практическая часть

Задача 3.1 Выяснить, применима ли машина Тьюринга T к слову P. Если применима, то выписать результат T(P) применения машины Тьюринга T к слову P.

q1 1 q1 0 R

q1 0 q3 0 L

T: q2 0 q2 1 L

q3 1 q2 1 R

q3 0 q3 1 E

P=11111001

Предполагается, что начальный момент Машина Тьюринга обозревает самую левую единицу слова.

Решение. По определению команд машины Тьюринга получаем последовательность конфигураций

q1 11111001

q1 1111001

q1 111001

q1 11001

q1 1001

q1 001

q3 0001

q3 1001

1 q2 001

q2 1101

Так как команда, начинающаяся символами q2 1 в программе отсутствует, то последняя конфигурация является заключительной. Следовательно, машина Тьюринга применима к слову P и T(P)=1101

Задача 3.2 Требуется построить машину Тьюринга, которая прибавляет единицу к числу на ленте. Входное слово состоит из цифр целого десятичного числа, записанных в последовательные ячейки на ленте. В начальный момент машина находится против самой правой цифры числа.

Решение. Машина должна прибавить единицу к последней цифре числа. Если последняя цифра равна 9, то ее заменить на 0 и прибавить единицу к предыдущей цифре. Программа для данной машины Тьюринга может выглядеть так:

0

1

2

3

4

7

8

9

1 H

1 H

2 H

3 H

4 H

5 H

8 H

9 H

0 Л

В этой машине Тьюринга q1 — состояние изменения цифры, q0 — состояние останова. Если в состоянии ql автомат видит цифру 0..8, то он заменяет ее на 1..9 соответственно и переходит в состояние q0, т.е. машина останавливается. Если же он видит цифру 9, то заменяет ее на 0, сдвигается влево, оставаясь в состоянии ql. Так продолжается до тех пор, пока автомат не встретит цифру меньше 9. Если же все цифры были равны 9, то он заменит их нулями, запишет 0 на месте старшей цифры, сдвинется влево и в пустой клетке запишет 1. Затем перейдет в состояние q0, т.е. остановится.

4 Практическое задание

4.1 Выяснить, применима ли машина Тьюринга T к слову P. Если применима, то выписать результат T(P) применения машины Тьюринга T к слову P. Предполагается, что начальный момент Машина Тьюринга обозревает самую левую единицу слова.

вариант

а)

б)

1

q1 1 q1 0 R

q1 0 q3 1 R

T: q2 1 q3 1 R

q2 0 q2 1 E

q3 0 q2 1 R

P=10010111

q1 0 q1 0 R

q1 1 q2 1 R

T: q2 1 q3 1 R

q2 0 q2 1 E

q3 0 q2 1 R

P=10011111

2

q1 1 q1 0 R

q1 1 q3 1 R

T: q2 0 q2 1 R

q2 0 q2 1 E

q3 0 q1 1 R

P=11010111

q1 1 q1 0 R

q1 0 q3 1 R

T: q2 1 q3 1 R

q2 0 q2 1 E

q3 0 q2 1 R

P=10011111

3

q1 1 q1 0 R

q1 0 q3 1 R

T: q2 1 q3 1 R

q2 0 q2 1 E

q3 0 q2 1 R

P=10010001

q1 1 q1 0 R

q1 1 q3 1 R

T: q2 1 q3 1 R

q2 0 q2 1 E

q3 0 q2 1 R

P=10110110

4

q1 1 q1 0 R

q0 0 q3 1 R

T: q2 1 q3 1 R

q2 0 q2 1 E

q3 0 q2 0 R

P=10010111

q1 1 q1 0 R

q2 0 q3 1 R

T: q2 1 q3 1 R

q1 0 q2 1 E

q3 0 q2 1 R

P=10010111

4.2 Решить задачу

вариант

задача

1

На ленте машины Тьюринга содержится последовательность символов “+”. Напишите программу для машины Тьюринга, которая каждый второй символ “+” заменит на “–”. Замена начинается с правого конца последовательности. Автомат в состоянии q1 обозревает один из символов указанной последовательности. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

2

Дано число n в восьмеричной системе счисления. Разработать машину Тьюринга, которая увеличивала бы заданное число n на 1. Автомат в состоянии q1 обозревает некую цифру входного слова. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

3

Дана десятичная запись натурального числа n > 1. Разработать машину Тьюринга, которая уменьшала бы заданное число n на 1. Автомат в состоянии q1 обозревает правую цифру числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

4

Дано натуральное число n > 1. Разработать машину Тьюринга, которая уменьшала бы заданное число n на 1, при этом в выходном слове старшая цифра не должна быть 0. Например, если входным словом было “100”, то выходным словом должно быть “99”, а не “099”. Автомат в состоянии q1 обозревает правую цифру числа. Кроме самой программы-таблицы, описать словами, что выполняется машиной в каждом состоянии.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]