Сравнение СЧА может быть выполнено с помощью блока TEST (ПРОВЕРИТЬ).
Его формат:
TEST X А,В[,С]
Таблица 4.43
| Операнд | Значение | Результат по умолчанию | ||
| А | СЧА | Ошибка | ||
| В | СЧА | Ошибка | ||
| С | Имя блока, в который переходит транзакт при условии, что ответ на вопрос, подразумеваемый оператором отношения, отрицательный | При отсутствии операнда С проверку выполняют в режиме отказа | ||
| X | Вспомогательный оператор, который представляет собой оператор отношения, использующийся при проверке | |||
| Значение оператора отношения: | Вопрос оператора отношения: | |||
| G | А больше В? | |||
| GE | А больше или равно В? | |||
| Е | А равно В? | |||
| NE | А не равно в? | |||
| LE | А меньше или равно В? | |||
| L | А меньше В? | |||
Операнды А и В - имена СЧА, которые сравниваются. Вспомогательный оператор X указывает способ сравнения этих двух СЧА друг с другом.
Пример 4.40
Режим отказа
TEST LE Q1,Q2
Проверяющий транзакт будет задержан в предыдущем блоке до тех пор, пока длина первой очереди не станет меньше или равна длине второй очереди.
Пример 4.41
Режим условного перехода
TEST LE Q1,Q2,ZHVS
Проверяющий транзакт перейдет в следующий по порядку блок, если содержимое первой очереди меньше или равно содержимому второй очереди. Если это условие не выполняется, транзакт перейдет в блок с меткой ZHVS.
Пример 4.42
TEST L F$SCANNER,X$MAX_UTIL,LLL
SEIZE SCANNER
LLL QUEUE QSCANNER2
Если устройство SCANNER имеет коэффициент загрузки меньше, чем значение сохраняемой величины MAX_UTIL, то транзакт идет на обслуживание этим устройством, в противном случае -переходит к блоку с меткой LLL.
Пример 4.43
Пусть в точке модели DISPATCHER необходимо удалить те транзакты, которые находились в модели больше, чем 100 ед. модельного времени. Для этого в модели можно использовать такие блоки:
GENERATE 18,6
DISPATCHER TESTL Ml,100,KILL
KILL TERMINATE
Задание для самостоятельной работы:
1. В отделе универсама есть две кассы. Покупатели становятся в очередь в ту кассу, у которой меньше очередь. Напишите фрагмент программы для этой ситуации.
2. Первые четыре часа работы парикмахерской клиенты обслуживаются одним мастером, следующие четыре - другим. Напишите фрагмент модели для этой ситуации.






