Imp: Difference between revisions
Jump to navigation
Jump to search
| Line 43: | Line 43: | ||
Imp = function(x,y) { | Imp = function(x,y) { | ||
if (x == null && !y) return null; | |||
if (!x && y == null) return true; | |||
if (y == null) return null; | |||
if (!x || x && y) return true; | if (!x || x && y) return true; | ||
return false; | return false; | ||
Revision as of 18:55, 27 May 2013
Result = x Imp y
Description
Imp returns the logical implication of two expressions. Logical implication returns TRUE if x implies y. Imp also does a bitwise comparison of two numeric expressions.
Table 13: Logical Implication
| x | y | Implication |
|---|---|---|
| True/1 | True/1 | True/1 |
| True/1 | False/0 | False/0 |
| False/0 | True/1 | True/1 |
| False/0 | False/0 | True/1 |
Example (Basic)
Rem Imp Example 'Imp preforms logical and bitwise implication Dim Test1, Test2, Test3, x, y x = 3 y = 5 Test1 = x < 0 Imp y < 10 Test2 = x > 0 Imp y > 10 Test3 = x < 0 Imp y > 10 Print "Logical:" Print " x < 0 Imp y < 10 = " & Test1 Print " x > 0 Imp y > 10 = " & Test2 Print " x < 0 Imp y > 10 = " & Test3
Example (JavaScript)
// Imp Example
/* Imp preforms logical and bitwise implication */
Imp = function(x,y) {
if (x == null && !y) return null;
if (!x && y == null) return true;
if (y == null) return null;
if (!x || x && y) return true;
return false;
}
var Test1, Test2, Test3, x, y;
x = 3;
y = 5;
Test1 = Imp(x < 0,y < 10);
Test2 = Imp(x > 0,y > 10);
Test3 = Imp(x < 0,y > 10);
NSB.Print("Logical:")
NSB.Print(" Imp(x < 0,y < 10) = " + Test1);
NSB.Print(" Imp(x > 0,y > 10) = " + Test2);
NSB.Print(" Imp(x < 0,y > 10) = " + Test3);
Output
Logical: x < 0 IMP y < 10 = True x > 0 IMP y > 10 = False x < 0 IMP y > 10 = True