большую гибкость и естественность. Модуль директива разрабатывается технологом. Для этого ему необходимо хорошо знать синтаксис и словарь ФТЯ-Д. Программы транслятора, производя синтаксический и семантический контроль, выявляют возможные ошибки, которые технолог должен устранить. В результате процесс построения директивы носит итерационный харак- тер. Увеличивается время построения, а следовательно, и общее время решения задачи. Наличие синтаксиса и словаря терминов позволяет создать программу, управляющую процессом формирования директивы и обеспе- чивающую ее правильность. Основу этой программы составляют моду- ли запросы ЭВМ к технологу по каждому разделу директивы (рис.). Алгоритм диалогового построения текста директивы Вход │ 1 v 2 ╓─────────────────────────╖ /───────────────────────\ ║ Укажите тип директивы ║ │ Технолог выбирает ТДk, │ ║ ╟─────────>│ │ ║ {ТДi} ║ │ принадлежащий {ТДi} │ ╙─────────────────────────╜ \────────────┬──────────/ │ 4 3 v /───────────────────────\ ╓─────────────────────────╖ │ Технолог выбирает но- │ ║ Выберите конкретную ди- ║ │ мер ДРjq, │<─────────╢ ║ │ принадлежащий {ДРkj} │ ║ рективу {ДРkj} ║ \──────────┬────────────/ ╙─────────────────────────╜ │ 5 v 6 /─────────────────────\ /─────────────────────\ / Тип директивы \ Нет / Тип директивы \ Нет ) < ТДk = Т1 ? >────────> < ТДk = Т2 ? >─────( \ / \ / ) \─────────┬───────────/ \───────────┬─────────/ │ │ 7 v 8 v ╓─────────────────────────╖ /───────────────────────\ ║ Укажите определяемый ║ │ Технолог выбирает Аr , │ ║ объект {Аi} ╟─────────>│ │ ║ ║ │ принадлежащий {Аi} │ ╙─────────────────────────╜ \────────────┬──────────/ │ 9 v ┌─────────────────────────┐ │ Выбрать НХq │ │ характеристику │<────┐ │ │ │ └─────────────┬───────────┘ │ │ │ 11 10 v │ ╓─────────────────────────╖ /─────────────────────\ │ ║ Укажите значение ║ Нет / НХq ранее \ │ ║ НХq ║<─────────< вычислена ? > │ ║ ║ \ / │ ╙───────────┬─────────────╜ \───────────┬─────────/ │ │ │ │ 12 v 13 v │ /───────────────────────\ ┌─────────────────────────┐ │ │ Технолог указывает │ │ Заслать значение │ │ │ значение НХq - ЗНq │ │ НХq - ЗНq │ │ │ │ │ │ │ \──────────┬────────────/ └─────────────┬───────────┘ │ └─────────────────────────────────┐ │ │ 14 v v │ /─────────────────────\ │ / Цикл по q \ Нет │ < q = n ? >─────┘ \ / \───────────┬─────────/ │ 15 v ┌─────────────────────────┐ │ Выход: текст директивы │ │ │ │ │ └─────────────────────────┘ Рис. Блоками 1, 2 на экране отображаются возможные типы директив, и технолог выбирает одну из них. Аналогичным образом блоками 3, 4 производится выбор конкретной директивы в пределах выбранного ти- па. Логические блоки 5, 6 осуществляют выбор ветви формирования текста директивы в зависимости от ее типа (поиск, определение объектов, печать, черчение и др.). Для каждого типа директивы и вида определяемого объекта А заранее (на стадии алгоритмизации) устанавливается набор исходных данных и технических ограничений. Это дает возможность построить алгоритм формирования постановки задачи. Оператором 9 выбирается очередная характеристика НХq. Если ее значение ранее вычислено, то оператор 13 записывает на экране название и значение характеристики. В противном случае значение характеристики заполняется технологом (блоки 11, 12). Оператором цикла 14 указанные действия повторяются для всей совокупности ис- ходных данных. В результате процесс построения директивы приобре- тает целенаправленный характер, уменьшается количество ошибок, упрощаются алгоритмы синтаксического и семантического контроля директивы. Возможны различные модификации алгоритма. Одна из них заклю- чается в том, что вместо последовательного формирования состава и значений характеристик на экран отображается весь их набор, а технолог должен присвоить им соответствующие значения. Первая мо- дификация алгоритма применяется тогда, когда имеется логическая зависимость вида последующей характеристики от значения предыду- щей, вторая - когда такая зависимость отсутствует, а задача ха- рактеризуется набором независимых друг от друга исходных данных и технических ограничений. В заключение хочется отметить, что в системах диалогового про-