User Tools

Site Tools


manual:Calculations

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
manual:Calculations [2019/06/17 23:59]
peternlewis [Operators]
manual:Calculations [2023/02/14 21:13]
peternlewis
Line 25: Line 25:
 | Array Separator (`,`) | Allows a text Variable, which has comma separated values, to work somewhat like an Array.\\ Assume `MyKMVariable` contains "​value1,​value2,​value3",​ then `MyKMVariable[2]` returns "​value2"​. | | Array Separator (`,`) | Allows a text Variable, which has comma separated values, to work somewhat like an Array.\\ Assume `MyKMVariable` contains "​value1,​value2,​value3",​ then `MyKMVariable[2]` returns "​value2"​. |
 | Ternary Operator (`?`) | a=b ? 3 : 4 | | Ternary Operator (`?`) | a=b ? 3 : 4 |
-| Bitwise OR (`|`), Bitwise AND (`&`) and Bitwise XOR | bitwise operators. |+| Bitwise OR (`|`), Bitwise AND (`&`) and Bitwise XOR | bitwise operators, which also act as logical boolean operators for 0 (false) and 1 (true). |
 | Comparison Operators (`<, ≤, =, >, ≥, ≠`) | compare for (in)equality and return 0 or 1. | | Comparison Operators (`<, ≤, =, >, ≥, ≠`) | compare for (in)equality and return 0 or 1. |
 | Shift Operators (`≪, ≫`) | shift a number left or right. | | Shift Operators (`≪, ≫`) | shift a number left or right. |
-| Arithmetic Operators\\   • Add (`+`)\\   • Subtract (`-`)\\   • Multiply (`*`)\\   • Divide (`/`) | mathematical ​function that takes two operands and performs a calculation on them. |+| Arithmetic ​Addition ​Operators \\   • Add (`+`)\\   • Subtract (`-`) | Basic mathematical operations. | 
 +| Arithmetic Multiplication Operators ​\\   • Multiply (`*`)\\   • Divide (`/`) | Basic mathematical ​operations. |
 | [Modulo](https://​en.wikipedia.org/​wiki/​Modulo_operation) (`i MOD n`) | The remainder of the division of `i` by `n`.\\ Both values (`i`, `n`) will be treated as integer.\\ `n` must not be 0.\\ the sign of the result is the same as the sign of i.  | | [Modulo](https://​en.wikipedia.org/​wiki/​Modulo_operation) (`i MOD n`) | The remainder of the division of `i` by `n`.\\ Both values (`i`, `n`) will be treated as integer.\\ `n` must not be 0.\\ the sign of the result is the same as the sign of i.  |
 | Integer division (`i DIV n`) | The integer quotient of the division of `i` by `n`.\\ Both values (`i`, `n`) will be treated as integer.\\ `n` must not be 0.\\ the sign of the result matches the sign of regular division. ​ | | Integer division (`i DIV n`) | The integer quotient of the division of `i` by `n`.\\ Both values (`i`, `n`) will be treated as integer.\\ `n` must not be 0.\\ the sign of the result matches the sign of regular division. ​ |
Line 41: Line 42:
 [[Variables|Variables]] can be used if they contain numeric expressions,​ including an *array* of numbers separated by commas, in which case you can use an array index to select the desired number. ​ [[Variables|Variables]] can be used if they contain numeric expressions,​ including an *array* of numbers separated by commas, in which case you can use an array index to select the desired number. ​
  
-You can use either `=` or `==` (v8+) for testing for equality.+You can use either `=` or `==` for testing for equality.
  
 Operators and functions must be in uppercase to minimize conflict with variables. Operators and functions must be in uppercase to minimize conflict with variables.
 +
 ===== Functions ===== ===== Functions =====
  
 The available functions are listed on the [[/​Functions|wiki Functions page]]. The available functions are listed on the [[/​Functions|wiki Functions page]].
  
-You can insert a function by name by choosing [[Menus#Insert_Function_by_Name|Insert Function ​by Name]] from the [[Menus#Edit|Edit menu]].+You can insert a function by name by choosing ​from the [[Menus#Insert_Function|Edit ➤ Insert Function ​menu]] or choosing ​the [[Menus#Insert_Function_by_Name|Edit ➤ Insert Function by Name menu]].
  
 ===== Variables ===== ===== Variables =====
  
-In numeric calculation fields, Variable Names are used without the `%` that are used in text token fields. ​ Do not try to use tokens (like `%Variable%MyVar%`) in numeric calculation fields, just use MyVar by itself. The variable must contain a valid numeric value, or an expression ​(v8+) that evaluates to a valid numeric value. ​ So for example, if MyVar contains a text value of `2*3`, then the calculation `4*MyVar` will return 24.+In numeric calculation fields, Variable Names are used without the `%` that are used in text token fields. ​ Do not try to use tokens (like `%Variable%MyVar%`) in numeric calculation fields, just use MyVar by itself. The variable must contain a valid numeric value, or an expression that evaluates to a valid numeric value. ​ So for example, if MyVar contains a text value of `2*3`, then the calculation `4*MyVar` will return 24.
  
 ===== Screen Coordinates ===== ===== Screen Coordinates =====
Line 110: Line 112:
 {{:​manual:​window-frame-example-results-km-7.3.png?​nolink|}} {{:​manual:​window-frame-example-results-km-7.3.png?​nolink|}}
  
-Some example expressions ​might be:+Some example expressions ​are:
  
 <​code>​ <​code>​
Line 123: Line 125:
 </​code>​ </​code>​
  
---- 
- 
-**KeyWords:​** ​ MOD, Modulo 
manual/Calculations.txt · Last modified: 2023/10/02 00:38 by peternlewis