Об операторах
Операторы в формулах можно использовать для выполнения арифметических операций (сложение, вычитание, умножение и т. д.) или логических сравнений (больше, меньше, равно и т. д.). Вы также можете управлять порядком вычисления в формуле, заключив выражения в круглые скобки. Используйте оператор ampersand для объединения (объединения) строк символов.
Microsoft Visio автоматически пытается преобразовать типы данных, если для операции или функции требуется определенный тип данных. Например, оператору умножения требуются числовые аргументы, а оператору амперсанда (объединение строк) требуются строковые аргументы. Если аргумент не может быть преобразован в требуемый тип данных, предоставляется значение по умолчанию. Значение по умолчанию является типизированным эквивалентом ничего: ноль для чисел, FALSE для логических значений, "" для строк и т. д.
В следующей таблице показаны примеры выражений и их результаты.
Expression | Результат | Описание |
---|---|---|
2 * 5 & "центов" |
"10 центов" |
Оператор & (объединение строк) требует строковых аргументов, поэтому числовой результат 2 * 5 автоматически преобразуется в строку "10". |
5 * "2" |
10 |
Оператор * (умножение) требует числовых аргументов, поэтому строка "2" автоматически преобразуется в эквивалентное число 2. |
5 * "овцы" |
0 |
Оператор * (умножение) требует числовых аргументов, поэтому, поскольку строку "овец" нельзя преобразовать в число, в качестве его числового эквивалента используется ноль. |
Арифметические операторы
Арифметические операторы выполняют операции с числами. Операторы плюс (+) и минус (-) можно использовать отдельно в качестве унарных операторов для установки знака числа. Оператор процента (%) также является унарным оператором и определяет число в процентах.
Описание | Действие | Пример | Результат |
---|---|---|---|
+ |
Унарный плюс |
+37 |
37 |
- |
Унарный минус |
-37 |
-37 |
% |
Унарный процент |
37 % |
.37 |
^ |
Экспоненциация |
5 ^ 2 |
25 |
* |
Умножение |
5 * 2 |
10 |
/ |
Подразделение |
5 / 2 |
2.5 |
+ |
Дополнение |
5 + 2 |
7 |
- |
Вычитание |
5 - 2 |
3 |
Операторы сравнения
Операторы сравнения используются для создания логических выражений. Логическое выражение имеет значение TRUE или FALSE.
Описание | Альтернатива | Действие | Пример | Результат |
---|---|---|---|---|
> |
GT |
Больше |
5 > 2 |
TRUE |
< |
LT |
Меньше |
5 < 2 |
FALSE |
>= |
GE |
Больше или равно |
5 >= 2 |
TRUE |
<= |
LE |
Меньше или равно |
5 <= 2 |
FALSE |
= |
ЭКВАЛАЙЗЕР |
Равно |
5 = 2 |
FALSE |
<> |
NE |
Не равно |
5 <> 2 |
TRUE |
Операторы символьного сравнения (>, <и т. д.) являются лучшим выбором для большинства сравнений. Альтернативные операторы (GT, LT и т. д.) выполняют точное сравнение с полными 15 цифрами точности, которые Visio использует для внутреннего хранения значений.
При сравнении округленных или вычисляемых значений с помощью альтернативных операторов может быть возвращено значение FALSE, если для всех практических целей выражение должно иметь значение TRUE.
При использовании операторов сравнения для сравнения текстовых строк строки сначала преобразуются в числовые значения. Текстовые строки, которые не могут быть преобразованы, возвращают значение 0; поэтому сравнения различаются и могут не дать ожидаемых результатов. Чтобы выполнить стандартное сравнение строк, используйте функцию STRSAME или STRSAMEEX.
Порядок оценки
Если формула содержит несколько выражений, выражения оцениваются по порядку в соответствии с выполняемой операцией. В этой таблице показан порядок оценки операторов в Visio.
Order | Действие | Описание |
---|---|---|
Первый |
Положительные |
+ (унарный) |
Negative |
- (унарный) |
|
Процент |
% (унарный) |
|
Second |
Экспоненциация |
^ |
Третий |
Умножение |
* |
Подразделение |
/ |
|
Четвертый |
Дополнение |
+ |
Вычитание |
- |
|
Пятый |
Объединение строк |
& |
Шестой |
Больше |
> или GT |
Больше или равно |
>= или GE |
|
Меньше |
< или LT |
|
Меньше или равно |
<= или LE |
|
Седьмой |
Равно |
= или EQ |
Not equal |
<> или NE |
Порядок вычисления можно изменить, заключив выражения в круглые скобки. Visio сначала вычисляет выражения в скобках слева направо. Например:
4 + 5 * 6 = 4 + 30 = 34
(4 + 5) * 6 = 9 * 6 = 54
Если выражения в скобках вложены, сначала вычисляется выражение во внутреннем наборе скобок.
Оператор Ampersand
Оператор ampersand возвращает новую строку символов. Составные слова и фразы можно создавать с помощью оператора амперсанд. Используйте следующий синтаксис.
"string1" & "string2"
Пример
"собака" & "дом" возвращает "doghouse"