ГОСТ Р И С 0 10303-11— 2009
9.4 Константа
Объявление константы используется для объявления именованных констант. Областью видимости
идентификатора константы должна быть функция, процедура, правило или схема, в которых происходит
объявление константы. Именованная константа, появляющаяся вобъявлении CONSTANT, должна иметь
явную инициализацию, значение которой вычисляется посредством оценивания выражения. Именованная
константа может присутствовать вобъявлении другой именованной константы. Объявление константдолж
но бытьациклическим.
П ри м е ч а н и е — Требование ацикличности объявлений констант необходимо для обеспечения досто
верности инициализации в любом случае, поскольку инициализация не обязательно реализуется в порядке
объявления.
Синтаксис:
195 constant_decl = CONSTANT constant_body {constant_body} E N D _C O N S TA N T .
194constant_body = constant_idinstantiablejypoexpression’;’.
240 instantiablejype = concretejypes | entity_ref.
Правила и ограничения:
a) Значение константы недолжно изменяться после инициализации.
b
)Любое появление именованной константы вне ее объявления должно быть эквивалентно появле
нию ее инициализированного значения.
c) Выражение expression в синтаксическом правиле 194 должно возвращать значение соответству
ющее указанному базовому типу.
Пример — Ниже приведены допустимые объявления констант:
CONSTANT
thousand : NUMBER := 1000;
million: NUMBER := thousand**2;
origin: point:= point(0.0.0.0. 0.0);
ENDCONSTANT;
9.5 Алгоритмы
Алгоритм является последовательностью операторов, выполнение которых приводит к некоторому
желаемому конечному состоянию. Существуютдва вида алгоритмов — функции и процедуры.
Формальные параметры определяют исходные данные для алгоритма. Обращение калгоритму осу
ществляется с фактическими параметрами, обеспечивающими фактические значения или экземпляры.
Фактические параметры должны соответствовать формальным параметрам по типуданных, порядку сле
дования и числу.
Если валгоритме необходимо сделать локальные объявления, то они приводятся непосредственно
после заголовка алгоритма. Локальными объявлениями могут быть объявления типовданных, локальных
переменных, других алгоритмов и т.д.
После локальныхобъявлений следует тело алгоритма.
9.5.1 Функция
Функция является алгоритмом, который обрабатывает параметры и выдаетединственное результиру
ющее значениеустановленного типаданных. При обращении к функции (см. 12.8) ввыражении вычисляет ся
результирующее значение в точке вызова.
Функциядолжна завершаться выполнением оператора RETURN. Значение выражения, связанного с
оператором RETURN, определяет результат, полученный при вызове функции.
Синтаксис:
220 function_decl = function_head algorithm_head stmt { stmt} E N D _F U N C T IO N .
221 function_head = FUNCTION functionJd [’Cformal_parameter
{’;’ formal_parameter} ’)’ ]parameter_type
218 formal_parameter = parameterjd {’,’ parameterjd}’:’ parameterjype.
266 parameterjype = generalizedJypes | namedJypes |simpleJypes.
173 algorithm_head = { declaration} [ constant_decl ] [ local_ded ].
199 declaration = entity_decl |functionjje c l |procedure_ded |
subtype_constraint_decl |type_decl.
47