logo
диплом / Диплом Вавилов

1.3. Реализация работы решателя в соответствии с ответами пользователя

Для того чтобы реализовать работу решателя в соответствии с ответами пользователя, необходимо организовать взаимодействие Таблицы 1 «Управление переходами состояний» и Таблицы 2 «Вопросы-ответы».

Для работы экспертной системы нам в каждый момент потребуется знать, в каком состоянии находится система.

Создадим управляющую ячейку (Таблица 3), в которую будем заносить номер текущего состояния системы. Эта ячейка поможет нам реализовать работу Решателя в соответствии с ответами пользователя.

Таблица 3. Текущее состояние

Текущее состояние

0

В начальном состоянии Экспертной системы значение в ячейке равно нулю.  Ясно, что должно происходить дальше.

Пользователь вводит ОТВЕТ (с клавиатуры или мышкой), который сравнивается со всеми возможными для текущего состояния ответами в     Таблице 1 «Управление переходами состояний» (сравнивают с ответами, находящимися в столбце «ответ пользователя»).

Выбирают ту строку Таблицы 1, которой соответствует ответ, выбранный пользователем, и в управляющую ячейку (Таблица 3) вносят новое значение «текущего состояния», которое находится в найденной строке в столбце «конечное состояние».

Затем проверяется запись в ячейке «конец поиска». Если поиск не закончен (в ячейке «конец поиска» записан ноль), то цикл «вопрос ЭС - ответ пользователя» продолжается с пункта, обозначенного стрелкой à.

Если в ячейке «конец поиска» записана единица («1» = да, конец поиска), то Экспертная Система выдает на экран РЕШЕНИЕ, соответствующее «текущему состоянию» из Таблицы 2 «Вопросы- Ответы», переходит к Блоку объяснений (об этом будет сказано дальше) и останавливается.