В большинстве случаев при создании С-величн используют блок LET. При этом значение, данное каждой С-величине, остается таким же до конца моделирования, если только его не изменит какой-нибудь транзакт, вошедший через этот или другой блок, относящийся к данной С-величине. Имя С?величины записывается как X$n ,где n - символическое имя. В общем случае формат блока LET имеет вид:
LET A=B
В приведенной записи операнд А - имя С-величины (переменной), операнд В - значение, которое присваивается переменной, указанной в операнде А. Операнд В может быть константой, СЧА или выражением.
Блок LET может работать в нескольких режимах. Простейшим из них является режим назначения:
LET X$cost=27 ! С-величина X$cost принимает значение 27
LET X$fval=FN$val
*С-величина X$fval получает текущее значение функции val.
Блок LET может также использоваться для распечатки значений СЧА не в конце моделирования, как обычно, а в любой момент времени. В этом случае следует использовать следующую конструкцию:
GENERATE 80,,,1
LET X$stor80=S$.
TERMINATE
Используя такой сегмент, можно распечатать текущую емкость МНУ stor в момент времени 80
Блок LET (либо оператор LET) может использоваться в качестве счетчика. Так, например, запись
LET X$cvb=X$cvb+1
означает увеличение величины X$cvb на единицу. Однако для выполнения подобной операции в micro-GPSS предусмотрена более простая конструкция:
LET+ A,B
(или LET- A,B для уменьшения значения счетчика). В приведенной записи операнд А - это имя С-величины, а операнд В - величина, на которую изменяется значение счетчика. Таким образом, приведенное выше выражение может быть записано в виде:
LET+ X$cvb,1
Помимо работы в режиме назначения, блок LET может использоваться для работы с параметрами транзактов. Значения параметров транзактов назначаются и изменяются с использованием одного из следующих трех режимов блока LET.
1. Режим замещения - старое значение параметра заменяется новым независимо от того, каким было это значение. Формат:
LET A=B