Executes statements in a DO-loop repetitively while
a condition is true.
Valid: |
in a DATA step
|
Category: |
Control
|
Type: |
Executable
|
DO WHILE (expression);
...more SAS statements...
|
-
(expression)
-
is any SAS expression, enclosed in parentheses.
You must specify at least one expression.
The expression is evaluated at the top
of the loop before the statements in the DO loop are executed. If the expression
is true, the DO loop iterates. If the expression is false the first time it
is evaluated, the DO loop does not iterate even once.
There are three other forms
of the DO statement:
-
The DO statement, the simplest form of DO-group
processing, designates a group of statements to be executed as a unit, usually
as a part of IF-THEN/ELSE statements.
-
The iterative DO statement executes statements
between DO and END statements repetitively based on the value of an index
variable.
-
The DO UNTIL statement executes statements in
a DO loop repetitively until a condition is true, checking the condition after
each iteration of the DO loop. The DO WHILE statement evaluates the condition
at the top of the loop; the DO UNTIL statement evaluates the condition at
the bottom of the loop.
Note: If the expression is false,
the statements in a DO WHILE loop do not execute. However, because the DO
UNTIL expression is evaluated at the bottom of the loop, the statements in
the DO UNTIL loop always execute at least once. ![[cautionend]](../../../../common/63294/HTML/default/images/cautend.gif)
These statements repeat the loop while N is less than
5. The expression N<5 is evaluated at the top of the loop. There are five
iterations in all (0, 1, 2, 3, 4).
n=0;
do while(n<5);
put n=;
n+1;
end;
Copyright © 2011 by SAS Institute Inc., Cary, NC, USA. All rights reserved.