Fixed variable 10#(ll/3)

Значение переменной FLOAT равно 36, так как койстанта 10 умножается на 3,67 и от результата 36,7 взята целая часть. Перемен­ная FIXED равна 30, так как результат промежуточной операции де­ления будет округлен до 3.

1. Для переменных с плавающей точкой не допускается опе­рация деления по модулю.

2. Использование дробных констант допускается только при описании переменных с плавающей точкой.

3.Стандартный числовой атрибут У$<имя переменной> ис­пользуется для обращения к значениям как арифметических пере­менных, так и переменных с плавающей точкой. Способ вычисления переменной определяется оператором описания этой переменной.

Булевы переменные. Булевы переменные позволяют прини­мать решения в зависимости от значений СЧА и состояния объектов GPSS, используя для этого только одно выражение.

Булевы переменные - это логические выражения, состоящие из различных СЧА и (или) других булевых переменных. В булевой пе­ременной проверяется одно или несколько логических условий. Ре­зультатом проверки есть единица (истина), если условия выполня­ются, и ноль (ложь) - в противном случае.

При описании булевых переменных используются три типа опе­раторов: логические, булевы и операторы отношений.

Логические операторы связаны с такими ресурсами, как уст­ройства, МКУ и логические ключи. Они используются для определе­ния состояния данных объектов. Логические операторы, используе­мые в GPSS, представлены в табл. 4.20

Таблица 4.20

Логические опе­раторы Значение оператора, отражающее состояние ресурса
FVj или Fj Равно 1, если устройство у занято или обслуживает прерывание, в противном случае - 0
FNVj Равно 1, если устройство у не занято и не обслуживает прерывание, в противном случае - 0
ч Равно 1, если устройство у обслуживает прерывание, в противном случае - 0
NIj Равно 1, если устройство у не обслуживает прерыва­ние, иначе - 0
NUj Равно 1, если устройство у не используется, в про­тивном случае - 0
Uj Равно 1, если устройство у используется, в противном случае - 0
SFj Равно 1, если многоканальное устройство у заполнено, иначе - 0
SNFj Равно 1, если МКУ у не заполнено, иначе - 0
SEj Равно 1, если МКУ у пусто, иначе - 0
SNEj Равно 1, если МКУ /не пусто, иначе - 0
SVj Равно 1, если МКУ j находится в состоянии использо­вания, в противном случае - 0
SNVj Равно 1, если МКУ у не используется, в противном слу­чае - 0
Логические операторы Значение оператора, отражающее состояние ресурса
LRj Равно 1, если логический ключ /выключен, иначе - 0
LSj Равно 1, если логический ключ /включен, иначе - 0

Операторы отношения выполняют алгебраическое сравнение операндов. Операндами могут быть константы или стандартные числовые атрибуты. Все операторы отношений записываются в кавычках:

"G" (G reater) - больше;

"L" (L ess) - меньше;

"Е" (E qual) - равно;

"NE" (N ot E qual) - не равно;

"LE" (L ess than or E qual) - меньше или равно;

"GE " (G reater than or E qual) - больше или равно;

Есть два булевых оператора:

"OR" — оператор «или», и " AND " - оператор «и». Оператор «или» проверяет, выполняется ли хотя бы одно из проверяемых условий. Оператор «и» требует выполнения обоих условий.

Задания для самостоятельной работы:

1. Задайте переменную VAR2 = (2.8 * <значение переменной VAR1>+ 128): 3.

2. Задайте переменную VAR3 = (7/4)*100х<значение перемен­ной VAR2>+41.

3. Пусть переменная VAR4 содержит количество изделий перво­го сорта, а переменная VAR5 - количество изделий второго сорта. Задайте переменную VAR6, которая бы давала процент изделий пер­вого сорта от общего числа изделий.

4. Задайте булеву переменную BVAR1, которая равна единице, если оба устройства FACIL1 и FACIL2 находятся в состоянии ЗАНЯТЫЙ, и ноль - для всех других случаев (F$имя - СЧА, опреде­ляющий занятость устройства, выдает значение 1, если устройство занято, 0 - если свободно).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: