Функции как параметры

Параметры, которые могут выражены в виде переменной, имеют дополнительное поле ввода данных (сразу справа от обычного поля ввода данных), которое помечено символом fx .

Двойное нажатие на это поле открывает ссылку на форму, которая будет использоваться для данного параметра.

Логичность данной формы заключается в следующем:

Запись выражений

Выражение может содержать переменные и постоянные значения, а также арифметические и логические операции. Используемые в выражении операции оцениваются в следующем порядке очередности:

Постоянные значения

Постоянные значения могут быть числовыми или символьными:

Преобразования типов


Тип Числовой Стринг Пересечение
Числовой - Стринг, содержащий числовое значение, т.е. “5” для 5 ИСТИННОЕ, если не равно нулю. ЛОЖНОЕ, если равно нулю.
Стринг Если возможно, числовое значение из стринга. В противном случае 0. - ИСТИННОЕ, если не пустое или если не "ложное". ЛОЖНОЕ, если "ложное" или пустое.
Пересечение 1, если ВЕРНОЕ. 0, если НЕВЕРНОЕ. “истинное” если ИСТИННОЕ. “неверно”, если ЛОЖНОЕ. -

Функции как параметры

Оператор Результат для чисел Результат для стрингов Результат для пересечения
+ Сложение Сочленение

Логическое ИЛИ

- Вычитание Недопустимая операция

Логическое ИЛИ в обратную сторону

* Умножение Недопустимая операция

Логическое И

/ Деление Недопустимая операция

Логическое И в обратную сторону

^ Степень *1*Операнды преобразовываются в числовые значения. *

Примечание: Если не утверждается обратное, тип выражения справа будет преобразован в тип выражения слева прежде, чем будет выполнена операция.

т.е. 5.05 будет (сочлененным) результатом “5.0” + 5, а 10 будет (арифметическим) результатом 5.0 + “5”.

Арифметические операции

Знак Оператор
> Больше чем
< Меньше чем
>= Больше или равно
< Меньше или равно
= Равно
!= Не равно

Примечание: Если типы выражений справа и слева различны, то тип выражения справа будет преобразован в тип выражения слева прежде, чем будет выполнено сравнение. Операции сравнения дают результат Пересечения.

Операции сравнения

Знак Оператор
& Логическое И
| Логическое ИЛИ
! Логическое НЕ

Логические операции

Анализатор выражения содержит условный оператор 'если (if)'. Синтаксическая структура:

если (if) <условное выражение> тогда (then) <выражение_истинное> в ином случае (else) <выражение_ложное> если (fi)

В отличие от большинства языков программирования, анализатор выражения обрабатывает оператор "если", как оператора, который должен иметь результат, поэтому все части оператора являются обязательными.

В первую очередь оценивается <условное выражение>. Это выражение использует стандартные правила типов, а результат затем преобразуется в Пересечение.

Если выражение оценивается, как ИСТИННОЕ, тогда оценивается <выражение_истинное>. В противном случае оценивается <выражение_ложное>.

Результирующий тип и значение оператора 'если' будет либо тип <выражение_истинное>, либо тип <выражение_ложное>.

Примечание: Последний маркер fi обозначает конец оператора if (если).

Вы можете использовать оператор 'если (if)' следующим образом:

ПКЗД + если (if) ИЗВЛЕЧЕНИЕ > 0.5 тогда ПКЗД * 2 в ином случае 0 если (fi)

Иными словами, если ИЗВЛЕЧЕНИЕ больше, чем 0.5, тогда прибавляем ПКЗД * 2 к ПКЗД, в ином случае прибавляем 0 (ничего).

Переменные

В случае Оптимизации карьера определяются следующие переменные значения:

Переменные Значение
ИСТИННОЕ Логическое ИСТИННОЕ
ЛОЖНОЕ Логическое ЛОЖНОЕ
ВСЕГДА Логическое ИСТИННОЕ
КООРД_X X координата текущего блока в переработке
КООРД_Y Y координата текущего блока в переработке
КООРД_Z Z координата текущего блока в переработке
<ИМЯ ПОЛЯ> Значение в поле записи.

Переменные значения

Общая форма вызова функции:

ФУНКЦИЯ (<парам1>, <парам2>, ... <парамN>)

Текущие определенные функции:

Функция Описание
ОПРЕД(x) X – переменное значение. Проверяет, было ли оно определено (было ли присвоено какое-либо значение).
SIN(x) Синус. Ожидается, что X будет выражено в градусах
COS(x) Косинус. Ожидается, что X будет выражено в градусах
TAN(x) Тангенс. Ожидается, что X будет выражено в градусах
ASIN(x) Арксинус. Возвращаемое значение выражено в градусах.
ACOS(x) Арккосинус. Возвращаемое значение выражено в градусах.
ATAN(x) Арктангенс. Возвращаемое значение выражено в градусах.
LN(x) Натуральный логарифм.
LG(x) Логарифм при основании 10

Подсказки:

  1. Точно знайте тип преобразования в вашем выражении. Запомните, что кроме нескольких исключений, тип результата соответствует типу левого операнда выражения. Поэтому, обратите внимание на то, что “5” + 5 будет равно “55”, а не 10.
  2. Запомните, что тип переменного значения соответствует типу соответствующего поля в файле.
  3. Названия функции и переменного значения, на которые имеется ссылка в выражении, совпадают только если они действительно необходимы для получения результирующего значения. Используйте функцию ОПРЕД, что гарантировать наличие переменной, которая имеет значение, до установки ссылки на нее. Выражение 2 + ПКЗД является ненадежным, поскольку ПКЗД может не существовать вообще или у него может не быть значения.
  4. Вместо этого используйте следующее выражение: 2 + если (if) ОПРЕД (ПКЗД) тогда ПКЗД в ином случае <некое_определенное_значение> если (fi).

  1. Для обеспечения правильности компьютерной обработки используйте круглые скобки.
  2. Запомните, что ВСЕ части оператора 'если (if)' являются обязательными. Не забудьте поставить маркер 'если (if)' в конце условного оператора.

Concept Link IconСМОТРИТЕ ТАКЖЕ

© MICROMINE Pty Ltd 2016