Составители:
Рубрика:
38 39
содержания и порядок следования действий, из которых состо-
ит процесс). Этот процесс можно представить в виде ориентиро-
ванного графа, в котором каждому из действий соответствует одна
вершина, а переходы от одного действия к другому изображаются
с помощью дуг графа, соединяющих соответствующие вершины.
В рассматриваемом примере в библиотеке с именем MDS, на-
ходящейся
на томе магнитных дисков REFLIB, имеется подпро-
грамма INTGTR, предназначенная для вычисления определенного
интеграла
b
a
xfI )(
dx методом трапеций. Необходимо построить
информационную модель диалогового процесса формирования за-
дания для вычисления определенного интеграла с помощью под-
программы INTGTR подынтегральной функции f(x), задаваемой
в виде формулы или списка формул.
При составлении и детализации последовательности действий
должны быть учтены следующие соображения. Для вызова и запу-
ска библиотечной программы INTGTR из
библиотеки MDS пре-
жде всего необходимо сформировать вызывающую программу,
которая передаст B INTGTR значения нижнего (a) и верхнего (b)
пределов интегрирования, а также значение параметра N, который
будет использован в INTGTR для вычисления шага интегрирова-
ния в формуле H = (b – a)
/
N. Кроме того, вызывающая програм-
ма должна получить из INTGTR вычисленное значение интеграла
и отпечатать на АЦПУ его значение вместе со значениями пре-
делов интегрирования. Далее необходимо сформировать подпро-
грамму, вычисляющую значения подынтегральной функции f(x)
для любого допустимого значения аргумента x. Эта подпрограм-
ма в соответствии с требованиями подпрограммы INTGTR должна
иметь заголовок вида SUBROUTINE FUNCIN (X, Y), где Х – зна-
чение аргумента х, а Y = f(x). И наконец, необходимо сформировать
совокупность операторов языка управления заданиями ОС ЕС,
обеспечивающую работу программы и подпрограммы FUNCIN –
объединение их вместе c подпрограммой INTGTR в единый загру-
зочный модуль, а также исполнение этого загрузочного модуля
с выдачей результатов на АЦПУ.
Итак
, укрупненно последовательность действий, входящих
в рассматриваемый процесс, можно представить таким образом:
1) сформировать шапку задания на вычисление определенно-
го интеграла с помощью библиотечной подпрограммы INTGTR;
2) сформировать вызывающую программу для обращения
к подпрограмме INTGTR и передачи ей исходных данных;
3) сформировать подпрограмму, которая будет вычислять значе-
ния подынтегральной функции f(х);
4) сформировать завершающую
чаcть задания на вычисление
определенного интеграла.
Определение совокупности действий при решении поставлен-
ной задачи составляет лишь первую часть работы, выполняемой
при формировании информационной модели диалогового процес-
са. Вторая ее часть – определение информации, которой будут об-
мениваться пользователь и диалоговая система при реализации
действий, выявленных выше. Будем различать четыре типа инфор-
мационных сообщений:
1) сообщения U
i
, i = 1, 2, ..., m, передаваемые системой пользо-
вателю, на которые не требуется ответов со стороны последнего;
2) сообщения T
j
, j = 1, 2, ..., n, помещаемые системой непосред-
ственно в формируемое задание без консультаций с пользователем;
3) сообщения S
k
, k = 1, 2, ..., q, выдаваемые системой пользова-
телю и требующие ответов со стороны последнего;
4) сообщения R
l
, l = 1, 2, ..., p, представляющие собой ответы
пользователя на сообщения системы типа S
к
.
5.1.2. Композиционные информационные модели
диалоговых процессов
В ряде случаев реализуемый класс диалоговых процессов может
быть таким, что информационная модель для него будет громоздкой
и неудобной для программирования. Тогда целесообразно разбить
сложную модель на несколько более простых, разработать каждую
в отдельности, а затем объединять в одну общую модель. С другой обо-
роны, рассматривая большое число различных классов диалоговых