
2 / автоматус2
.docxЦель работы: разработать методику построения конечного автомата на основе блок-схемы алгоритма распознавания и применить ее для создания конечного автомата для конкретного алгоритма распознавания.
Индивидуальное задание:
Вариант 16.
Последовательность: ccd.
Входной алфавит: {a, b, c, d, z}.
Ход работы:
Основной задачей для построения блок-схемы будет проверка корректного расположения среднего символа последовательности (в нашем случае символа c). Этот символ может встречаться только в заданном контексте – между символами c и d, любая другая ситуация некорректна.
В выходном алфавите распознавателя следует предусмотреть три варианта завершения работы:
во входной последовательности проверяемый символ не встретился.
проверяемый символ используется некорректно (работа распознавателя при первой же ошибке может быть завершена).
проверяемый символ используется правильно.
Построим блок-схему распознавателя (Рисунок 1)
Рисунок 1 – Блок-Схема автомата распознавания
По данной блок-схеме была построена таблица конечного автомата Мура (Таблица 1).
Таблица 1
|
q0 |
q1 |
q2 |
q3 |
q4/Отсутствует |
q5/Некорректно |
q6/Правильно |
a |
q0 |
q5 |
q5 |
q0 |
- |
- |
- |
b |
q0 |
q5 |
q5 |
q0 |
- |
- |
- |
c |
q1 |
q2 |
q5 |
q0 |
- |
- |
- |
d |
q0 |
q5 |
q3 |
q0 |
- |
- |
- |
z |
q4 |
q5 |
q5 |
q6 |
- |
- |
- |
Далее был построен автомат Мура (рисунок 2).
Рисунок 2 – Автомат распознавания
Моделирование работы автомата
Рисунок 3 – результаты проверки последовательности
Вывод: В результате выполнения лабораторной работы были улучшены навыки, необходимые для создания конечного детерминированного автомата Мура. Был изучен и построен алгоритм распознавателя последовательности с помощью блок-схемы и таблицы переходов-выходов. В результате моделирования все исходы оказались верными.