Команда IF определяет, истинно или ложно значение выражения, следующего непосредственно за ней. Если выражение истинно, то выполняется остаток строки. Если выражение ложно, остаток строки не выполняется, а управление передается следующей строке кода.
Следующий пример предупреждает попытку деления на 0:
IF y=0 WRITE "Нельзя делить на 0".
В этом примере команда WRITE выполнится, только если y=0.
Команда ELSE
Команда ELSE определяет код, который выполняется в случае, если выражение команды IF ложно.
Например, можно использовать команды IF и ELSE для определения наклона (Slope) линии:
IF x=0 SET Slope="Не определен"
ELSE SET Slope=y/x
Учтите, что между ELSE и SET два пробела!
Операторы
Операторы определяют действие, производимое над одним или несколькими выражениями.
В системе Caché имеется множество операторов, выполняющих арифметические операции. Список операторов:
Таблица 2 – Арифметические операторы.
Оператор | Значение |
+ | Если используется с одним операндом, то операнд вычисляется как числовое выражение. Если выражение не может быть вычислено, возвращает 0. При использовании с двумя операндами складывает их числовые значения |
- | Если используется с одним операндом, то операнд вычисляется как числовое выражение, затем умножается на –1. Если выражение не может быть вычислено, возвращает 0. При использовании с двумя операндами вычитает их числовые значения |
= | Сравнивает 2 операнда и возвращает True, если они равны, и False в противном случае. Оператор сравнения может быть использован как для чисел, так и для строк |
* | Возвращает произведение двух операндов. Если один из операндов не вычисляется как число, его значение принимается равным 0, в результате также получается 0 |
/ | Производит деление первого операнда на второй. Возвращает ошибку, если второй операнд равен нулю |
\ | Производит целочисленное деление первого операнда на второй. Возвращает ошибку, если второй операнд равен нулю |
** | Возводит первый операнд в степень второго операнда |
# | Возвращает остаток от деления первого операнда на второй |
В Caché имеются операторы, сравнивающие числовые значения:
|
|
Таблица 3 – Характеристика операторов сравнения.
Оператор | Значение |
> | Истинен, если первый операнд меньше, чем второй. Если выражение невозможно вычислить как числовое, оно принимается нуль. |
< | Истинен, если первый операнд меньше, чем второй. Если выражение невозможно вычислить как числовое, оно принимается нуль. |