- •Введение
- •1. Основные понятия системы рдо
- •2. Необходимые объекты модели
- •2.1. Объект типов ресурсов
- •2.2. Объект ресурсов
- •2.3. Объект образцов операций
- •2.4. Объект операций
- •2.5. Объект точек принятия решений
- •2.6. Объект прогона
- •3. Дополнительные объекты модели
- •3.1. Объект констант, функций и последовательностей
- •3.2. Объект кадров анимации
- •4. Объекты трассировки и сбора статистики
- •4.1. Объект трассировки
- •4.2. Объект требуемой статистики
- •4.3. Объект результатов
- •5. Работа в среде рдо
- •5.1. Окна редактора и имитатора исм рдо
- •5.2. Зарезервированные слова
- •5.3. Глобальные переменные и стандартные функции
- •6. Демонстрационные примеры
- •6.1. Моделирование экзамена
- •6.2. Моделирование игры
- •7. Содержимое каталога рдо
- •Литература
- •Оглавление
5.2. Зарезервированные слова
В данной версии языка имеются зарезервированные слова, перечисленные в табл. 5.2), которые должны быть написаны именно так, как указано (прописные и строчные буквы различаются) и не могут быть использованы в другом контексте.
Таблица 5.2
Список зарезервированных слов | |||
$Activities $Back_picture $Body $Compare_tops $Condition $Constant $Decision_point $Default $End $End_picture $Evaluate_by $Frame $Function $Include $Operation $Parameters $Pattern $Relevant_resource $Resource_type $Resources $Results $Sequence $Term_condition $Time $Type active after algorithmic |
All And Animation Before Bitmap Breake_point by_hist Calculate_if Choice Convert_begin Convert_end Convert_event Convert_rule Create Ellipse Enumerative Erase Exponential First Frame_file Frame_number From get_value Get_value Integer Irregular_event Keep keyboard |
line list Model_name Monitor NO no_trace NoChange NoCheck NonExist normal NoShow operation OprIev_file or permanent r_rect real rect Resource_file Results_file rule Run_StartTime s_bmp search set Show Show_if Show_mode |
Show_rate Some Statistic_file such_as table temporary Terminate_if text trace trace_all Trace_EndTime Trace_file Trace_StartTime trace_stat trace_tops transparent triang uniform until value watch_par watch_quant watch_state watch_value with_max with_min YES |
5.3. Глобальные переменные и стандартные функции
Глобальные переменные и стандартные арифметические функции используются в арифметических выражениях. Глобальных переменных в данной версии языка две (табл. 5.3).
Таблица 5.3
Имя переменной |
Тип переменной |
Описание |
Seconds
Time_now |
Вещественный
Вещественный |
Содержит количество секунд, прошедших с момента начала моделирования. Содержит значение текущего модельного времени (времени в моделируемой системе) в единицах времени. |
Стандартные арифметические функции, включенные в данную версию языка, перечислены с необходимыми пояснениями в табл. 5.4.
Таблица 5.4
Функ-ция |
Тип значения |
Тип 1-го аргумента |
Тип 2-го аргумента |
Описание |
Abs(x)
ArcCos(x)
ArcSin(x)
ArcTan(x)
Cos(x)
Cotan(x)
Exp(x)
Floor(x)
Frac(x)
IAbs(x)
IMax(x, y)
IMin(x, y)
Int(x)
|
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Целый
Вещественный
Целый
Целый
Целый
Целый
|
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Целый
Целый
Целый
Вещественный
|
Целый
Целый
|
Вычисляет абсолютную величи-ну вещественного аргумента х Вычисляет арккосинус аргумен-та х, заданного в радианах Вычисляет арксинус аргумента х, заданного в радианах Вычисляет арктангенс аргумен-та х, заданного в радианах Вычисляет косинус аргумента х, заданного в радианах Вычисляет котангенс аргумента х, заданного в радианах Вычисляет значение е в степени х Результат функции наиболь-шее целое число, не превосхо-дящее х Возвращает дробную часть ве-щественного аргумента х Вычисляет абсолютную величи-ну целого аргумента х Возвращает максимальное из значений двух целых аргумен-тов х,у Возвращает минимальное из значений двух целых аргумен-тов х,у Результат функции наиболь-шее целое число, не превосхо-дящее х
|
|
|
|
|
Продолжение табл. 5.4 |
Функ-ция |
Тип значения |
Тип 1-го аргумента |
Тип 2-го аргумента |
Описание |
IntPower (x, y)
Ln(x)
Log10(x)
Log2(x)
LogN(x, y)
Max(x, y)
Min(x, y)
Power (x, y)
Round(x)
Sin(x)
Sqrt(x)
Tan(x) |
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Целый
Вещественный
Вещественный
Вещественный |
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный
Вещественный |
Целый
Вещественный
Вещественный
Вещественный
Вещественный
|
Вычисляет значение х в целой степени у с учетом знака х. Если х отрицателен и у нечетная, то результат отрицателен Вычисляет натуральный лога-рифм положительного аргумен-та х Вычисляет логарифм по осно-ванию 10 положительного аргу-мента х Вычисляет логарифм по осно-ванию 2 положительного аргу-мента х Вычисляет логарифм по осно-ванию у положительного аргу-мента х. Аргумент у должен быть положительным Возвращает максимальное из значений двух вещественных аргументов х и у Возвращает минимальное из значений двух вещественных аргументов х и у Вычисляет значение х в степени у. Х должен быть неотри-цателен Округляет значение веществен-ного аргумента х к ближайшему целому числу Вычисляет синус аргумента х, заданного в радианах Вычисляет значение квадрат-ного корня из х. Х должен быть неотрицателен Вычисляет тангенс аргумента х, заданного в радианах |
Кроме стандартных арифметических функций в языке определены четыре стандартные функции, значением которых является ИСТИНА или ЛОЖЬ. Синтаксис вызова этих функций следующий:
<имя_функции> "("<имя_типа_ресурсов> : ( <логическое_выражение>| NoCheck ) ")"
Стандартные логические функции используются в логических выражениях. В табл. 5.5 приведены их имена и способы вычисления значений.
Если вместо логического выражения указано зарезервированное слово NoCheck, то рассматриваются все ресурсы указанного типа. В этом случае функция Exist определяет, существует ли хотя бы один ресурс указанного типа, функция For_All всегда выдает значение ИСТИНА (даже если нет ни одного ресурса указанного типа), а функция Not_For_All всегда выдает значение ЛОЖЬ.
Пример на вызов стандартных логических функций:
Exist (Студенты : Студенты.Состояние = Пришел and
Студенты.Зачет = 1)
Not_Exist (Студенты : NoCheck)
Таблица 5.5
Имя функции |
Значение |
Exist
Not_Exist
For_All
Not_For_All
|
Если существует хотя бы один ресурс указанного типа, состояние которого удовлетворяет заданному логическому выражению, то функция выдает значение ИСТИНА, в противном случае ЛОЖЬ. Если не существует ни одного ресурса указанного типа, состояние которого удовлетворяет заданному логическому выражению, то функция выдает значение ИСТИНА, в противном случае ЛОЖЬ. Если состояние всех ресурсов указанного типа удовлетворяет заданному логическому выражению, то функция выдает значение ИСТИНА, в противном случае ЛОЖЬ. Если состояние не всех ресурсов указанного типа удовлетворяет заданному логическому выражению, то функция выдает значение ИСТИНА, в противном случае ЛОЖЬ. |