Template:RelationalOperationsPlugin: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary Tag: Manual revert |
||
(10 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{FixedStart}} | {{FixedStart}} | ||
Table 3: The relational operations for condition checking. | |||
In this table, '''A''' and '''B''' are the [[Expression|Expressions]] to compare. Both must represent | |||
the same general type, i.e. they must result into either numerical values | |||
or [[STRING]] values. If a test succeeds, then '''true''' (-1) is returned, '''false''' (0) | |||
if it fails, which both can be used in further [[Boolean]] evaluations. | |||
┌─────────────────────────────────────────────────────────────────────────┐ | ┌─────────────────────────────────────────────────────────────────────────┐ | ||
│ '''[[Relational Operations]]''' │ | │ '''[[Relational Operations]]''' │ | ||
Line 19: | Line 23: | ||
│ A [[Greater Than Or Equal|>=]] B │ Tests if A is '''greater than or equal''' to B. │ [[IF]] A [[Greater Than Or Equal|>=]] B [[THEN]] │ | │ A [[Greater Than Or Equal|>=]] B │ Tests if A is '''greater than or equal''' to B. │ [[IF]] A [[Greater Than Or Equal|>=]] B [[THEN]] │ | ||
└────────────┴───────────────────────────────────────────┴────────────────┘ | └────────────┴───────────────────────────────────────────┴────────────────┘ | ||
The | The operations should be very obvious for numerical values. For strings | ||
be aware that all checks are done '''case sensitive''' (i.e. "Foo" <> "foo"). | |||
The '''equal'''/'''not equal''' check is pretty much straight forward, but for the | |||
'''less'''/'''greater''' checks the [[ASCII]] value of the first different character is | '''less'''/'''greater''' checks the [[ASCII]] value of the first different character is | ||
used for decision making: | |||
'''E.g.''' "abc" is '''less''' than "abd", because in the first difference (the 3rd | |||
character) the "c" has a lower [[ASCII]] value than the "d". | |||
This behavior may give you some subtle results, if you are not aware of | This behavior may give you some subtle results, if you are not aware of | ||
the [[ASCII]] values and the written case: | the [[ASCII]] values and the written case: | ||
'''E.g.''' "abc" is '''greater''' than "abD", because the small letters have higher | |||
[[ASCII]] values than the capital letters, hence "c" > "D". You may use | |||
[[LCASE$]] or [[UCASE$]] to make sure both strings have the same case. | |||
{{FixedEnd}} | {{FixedEnd}} |
Latest revision as of 18:19, 15 December 2022
Table 3: The relational operations for condition checking. In this table, A and B are the Expressions to compare. Both must represent the same general type, i.e. they must result into either numerical values or STRING values. If a test succeeds, then true (-1) is returned, false (0) if it fails, which both can be used in further Boolean evaluations. ┌─────────────────────────────────────────────────────────────────────────┐ │ Relational Operations │ ├────────────┬───────────────────────────────────────────┬────────────────┤ │ Operation │ Description │ Example usage │ ├────────────┼───────────────────────────────────────────┼────────────────┤ │ A = B │ Tests if A is equal to B. │ IF A = B THEN │ ├────────────┼───────────────────────────────────────────┼────────────────┤ │ A <> B │ Tests if A is not equal to B. │ IF A <> B THEN │ ├────────────┼───────────────────────────────────────────┼────────────────┤ │ A < B │ Tests if A is less than B. │ IF A < B THEN │ ├────────────┼───────────────────────────────────────────┼────────────────┤ │ A > B │ Tests if A is greater than B. │ IF A > B THEN │ ├────────────┼───────────────────────────────────────────┼────────────────┤ │ A <= B │ Tests if A is less than or equal to B. │ IF A <= B THEN │ ├────────────┼───────────────────────────────────────────┼────────────────┤ │ A >= B │ Tests if A is greater than or equal to B. │ IF A >= B THEN │ └────────────┴───────────────────────────────────────────┴────────────────┘ The operations should be very obvious for numerical values. For strings be aware that all checks are done case sensitive (i.e. "Foo" <> "foo"). The equal/not equal check is pretty much straight forward, but for the less/greater checks the ASCII value of the first different character is used for decision making: E.g. "abc" is less than "abd", because in the first difference (the 3rd character) the "c" has a lower ASCII value than the "d". This behavior may give you some subtle results, if you are not aware of the ASCII values and the written case: E.g. "abc" is greater than "abD", because the small letters have higher ASCII values than the capital letters, hence "c" > "D". You may use LCASE$ or UCASE$ to make sure both strings have the same case. |