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

Реализация конечного автомата "Умный родитель" в среде электронных таблиц ms Excel

1. Закодировать равномерным двоичным кодом символы входного алфавита автомата "Умный родитель" и записать их в справочник, для этого:

1.1. Определить длину кодового слова равномерного двоичного кода для символов входного алфавита:

= {неудовлетворительно, отлично}.

Воспользоваться формулой: (бит).

1.2. Кодовые слова символов записать справочник на рабочем листе MSExcel, ключевое поле справочника – входной символ алфавита. Кодовые символы разместить в ячейках диапазонаC5:C6 (рис.6).

2. Закодировать равномерным двоичным кодом символы выходного алфавита автомата "Умный родитель" и записать их в справочник, для этого:

2.1. Определить длину кодового слова равномерного двоичного кода для символов выходного алфавита:

= {брать ремень, ругать ребенка, успокаивать ребенка, надеяться, радоваться, ликовать}.

Воспользоваться формулой:

(бита).

2.2. Кодовые слова символов выходного алфавита записать в справочник на рабочем листе MSExcel, ключевое поле справочника – кодовое слово символа выходного алфавита. Кодовые слова разместить в ячейках диапазонаЕ5:Е10 (рис.7).

2.3. Символы выходного алфавита разместить в ячейках диапазона F5:F10.

Рис. 7. Справочники кодовых слов для символов входного и выходного алфавитов

3. Закодировать равномерным двоичным кодом символы алфавита состояний автомата "Умный родитель" и записать их в справочник, для этого:

3.1. Определить длину кодового слова равномерного двоичного кода для символов алфавита состояний автомата:

= {начальное состояние, расстроенное, гневное, радостное}.

Воспользоваться формулой:

(бита).

3.2. Кодовые слова символов алфавита состояний записать справочник на рабочем листе MSExcel, ключевое поле справочника – кодовое слово символа выходного алфавита.

Кодовые слова разместить в ячейках диапазона I5:I8 (рис.8).

3.3. Символы выходного алфавита разместить в ячейках диапазона J5:J10 (рис. 8).

Рис. 8. Справочники кодовых слов для символов входного, выходного алфавитов и алфавита состояний

4. Для формирования кодированной таблицы переходов и выходов необходимо создать совместную таблицу переходов и выходов в ячейках рабочего листа D15:H21.

В клетки таблицы записать кодовые слова для символов входного, выходного алфавитов и алфавита состояний как показано на схеме (рис. 9).

Рис. 9. Совместная таблица значений функций переходов и выходов

5. По данным совместной таблицы переходов и выходов составить кодированную таблицу переходов и выходов (рис.10).

Это справочник, его строка состоит из трех полей:

– ключевого поля,

– кодового слова, определяющего состояние автомата в следующий момент времени,

– кодового слова, определяющего выходной символ алфавита.

Таблицу разместить в диапазоне N3:P10рабочего листа, заполняя построчно значения ячеек:

а) ключевое поле справочника (значения в ячейках колонки N) формируется из трех двоичных символов:

первый бит – кодовый знак символа входного алфавита, адресует строку совместной таблицы переходов и выходов,

два следующих бита – кодовый знак символа алфавита состояний, адресует колонку совместной таблицы переходов и выходов,

б) клетка совместной таблицы переходов и выходов, которая расположена на пересечении этой строки и столбца (рис.9), содержит кодовое слово последующего состояния. Записать его в поле кодовой таблицы «Последующее состояние»,

в) кроме того, в этой же клетке совместной таблицы переходов и выходов записано кодовое слово выходного символа. Занести это кодовое слово в поле кодовой таблицы «Выходной символ».

Рис. 10. Кодированная таблицы переходов и выходов на рабочем листе MS Excel

6. «Кодированная таблица переходов и выходов» – служит справочником. Поэтому строки этой таблицы следует упорядочить по возрастанию значения поля «Входной символ/Текущее состояние».

7. Подготовить диапазон ячеек A28:F29 для демонстрации работы автомата "Умный родитель":

7.1. Занести наименования столбцов в ячейки диапазона A28:F28 в соответствии со схемой на рис. 11.

7.2. В ячейку С29 занести код начального состояния – "00".

7.3. Из справочника «Входной алфавит X» в ячейкуD29 выбрать соответствующий этому коду символ входного алфавита (рис. 11), для этого в ячейку D29 ввести формулу:=ВПР(C29;$I$5:$K$8;2)

Диапазон ячеек примет вид

Рис. 11. Подготовка к демонстрации работы автомата

8. Диапазон ячеек А30:F30соответствует первому такту работы автомата.

Для определения кодов и символов входного, выходного алфавита и алфавита состояний для первого такта использовать следующие формулы:

8.1. В ячейку B30ввести формулу определения кода входного символа:=ВПР(A30;$A$5:$C$6;3)

8.2. В ячейку C30ввести формулу:=ВПР(B30&C29;$N$3:$P$10;2).

Эта формула определяет код состояния автомата на первом такте работы автомата.

Первый параметр функции задает образец поиска в кодированной таблице переходов и выходов. Образец состоит из трех битов:

первый бит – кодовый знак символа входного алфавита, значение ячейки B30,

два следующих бита – код начального состояния, значение ячейки C29.

8.3. В ячейку D30 ввести формулу:=ВПР(C30;$I$5:$K$8;2).

8.4. В ячейку E30ввести формулу:=ВПР(B30&C29;$N$3:$P$10;3).

8.5. В ячейку F30ввести формулу:=ВПР(E30;$E$5:$G$10;2).

9. Чтобы убедиться в корректности введенных формул, измените режим просмотра рабочего листа.

На линейке управления перейдите на закладку Формулы, затем активируйте командуПоказать формулы(рис. 12).

Рис.12. Переход в режим просмотра формул рабочего листа

10. Включается режим просмотра формул в ячейках рабочего листа (рис.13).

Рис.13. Просмотр рабочего листа в режиме формул

11. Просмотрите формулы и вернитесь в режим отображения значений результата (рис. 14).

Рис. 14. Просмотр рабочего листа в режиме отображения результата.

12. В диапазон ячеек B30:B35 ввести входную цепочку символов (рис. 15), например, такую:

неудовлетворительно отлично отлично неудовлетворительно отлично отлично

Рис. 15. Входная цепочка символов автомата "Умный родитель" записывается в диапазон B30:B35

13. Определить значения ячеек диапазона для каждого входного символа. Для этого выделить диапазон ячеек B30:F30 и маркером автозаполнения раскопировать его на диапазон B30:F35 (рис. 16).

Рис. 16. Диапазон ячеек рабочего листа MS Excel – иллюстрация работы автомата "Умный родитель"

14. Схема рабочего листа со сценарием работы автомата "Умный родитель" представлена на рис. 17.

Рис. 17. Рабочий лист MS Excel – результат выполнения лабораторной работы 4.

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