Задание
Написать программу, реализующую машину, согласно заданию. В зависимости от варианта это может быть машина Тьюринга или Поста. Машина Тьюринга может работать с данными в любой системе счисления (по заданию либо бинарная, либо унарная) машина Поста может работать только в унарной системе счисления. Управляющий автомат для машины может быть реализован в виде автомата Мили или Мура. Поскольку для работы обоих машин необходима запоминающая лента ее можно реализовать либо в виде массива достаточной длинны (в данном случае накладывается ограничение на возможности машины) либо в виде динамического списка. Машина должна выполнять целочисленные операции, согласно заданию, над натуральными числами до 50. Начальное состояние ленты вводится с клавиатуры либо из файла Каждый шаг машины должен выводится в текстовый файл в виде таблицы отражающей текущие состояние ленты и положение головки и действие, которое было выполнено. Для машины Тьюринга может выглядеть следующим образом:
аа111111*а11=1 R=
↑
аа111111*а11=1 R1
↑
аа111111*а11=11 L1
↑
Роль стрелки может выполнять любой символ, символы R и L показывают левый и правый сдвиг головки, символы = и 1 отображают символ, который был напечатан.
Содержание отчета:
-
Задание.
-
Система команд для машины Тьюринга . Либо программа для машины Поста.
-
Граф управляющего автомата.
-
Информация на ленте для каждого шага (такта) работы машины.
-
Листинг программы для реализации задачи на языке программирования.
|
Сортировка \вариант |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
|
Машина Тьюринга унарная система |
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
Машина Тьюринга бинарная система |
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
|
Машина Поста |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
V |
|
|
Автомат Мили |
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
|
Автомат Мура |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
V |
|
Лента – список |
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
|
Лента – массив |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
|
V |
V |
|
Операция - умножение |
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
|
Операция - деление |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
|
|
|
V |
V |
V |
V |
|
НС с клавиатуры |
|
|
|
|
|
|
|
|
V |
V |
V |
V |
V |
V |
V |
V |
|
|
|
|
|
|
|
|
V |
V |
V |
V |
V |
V |
V |
V |
|
|
|
|
|
|
|
|
|
НС из файла |
V |
V |
V |
V |
V |
V |
V |
V |
|
|
|
|
|
|
|
|
V |
V |
V |
V |
V |
V |
V |
V |
|
|
|
|
|
|
|
|
V |
V |
V |
V |
V |
V |
V |
V |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
