Difference between revisions of "Error Messages/40020"
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Category:Error messages]] | [[Category:Error messages]] | ||
− | == Error | + | == Error message examples == |
− | :<code>''The condition for "while" evaluates to an array. It should evaluate to true(non-zero) of false(zero).''</code> | + | :<code>''The condition for "while" evaluates to an array. It should evaluate to true (non-zero) of false (zero).''</code> |
== Cause == | == Cause == | ||
− | This error is caused when an array is passed as the condition of a [[while]] loop. The following code will produce this error as [[Time]] is an array and | + | This error is caused when an array is passed as the condition of a [[while]] loop. The following code will produce this error as [[Time]] is an array and <code>Time > 5</code> will evaluate to an array. |
− | <code>Var a:= 5; </code> | + | :<code>Var a:= 5; </code> |
− | <code>While( Time > 5 ) Do{</code> | + | :<code>While(Time > 5) Do{</code> |
− | <code>a++;</code | + | :<code>a++;</code> |
− | <code>}</code> | + | :<code>}</code> |
− | <code>...</code> | + | :<code>...</code> |
== Remedies == | == Remedies == | ||
Line 18: | Line 18: | ||
=== Suggested revised message === | === Suggested revised message === | ||
− | In a construct '''WHILE''' <cond> '''DO''' <exp>, the condition should be a scalar (true (non-zero) or false (zero)), but not an [[array]]. See | + | In a construct '''WHILE''' <cond> '''DO''' <exp>, the condition should be a scalar (true (non-zero) or false (zero)), but not an [[array]]. See [[Ensuring Array Abstraction]] in [[Analytica User Guide]] on how to deal with this. |
− | |||
==See Also== | ==See Also== | ||
Line 25: | Line 24: | ||
* [[Time]] | * [[Time]] | ||
* [[Array Abstraction]] | * [[Array Abstraction]] | ||
+ | * [[Ensuring Array Abstraction]] |
Latest revision as of 01:26, 4 February 2016
Error message examples
The condition for "while" evaluates to an array. It should evaluate to true (non-zero) of false (zero).
Cause
This error is caused when an array is passed as the condition of a while loop. The following code will produce this error as Time is an array and Time > 5
will evaluate to an array.
Var a:= 5;
While(Time > 5) Do{
a++;
}
...
Remedies
Correct the condition for the while loop so it evaluates to true or false.
Suggested revised message
In a construct WHILE <cond> DO <exp>, the condition should be a scalar (true (non-zero) or false (zero)), but not an array. See Ensuring Array Abstraction in Analytica User Guide on how to deal with this.
See Also
Comments
Enable comment auto-refresher