vooper 发表于 2018-8-15 15:38:02

SAS循环控制语句--DO UNTIL循环

DO UNTIL语句一般使用格式为:DO UNTIL(循环退出条件);
    循环体语句…;
    END;其中循环体语句是SAS语句,循环体退出条件为逻辑表达式。语句开始执行,首循环体每执行一次都要判断是否满足循环退出条件,若循环退出条件表达式的逻辑结果为真,则退出循环,否则重复执行循环体语句。

下面用例2-3具体说明此语句的用法。

例2-3  改用DO UNTIL语句编程完成例2-2的问题。

编写如下程序(其在光盘中的保存路径为“proc\chap2\example2_3”):
data chap2.example2_2;
    y=100;                                 /*取y的初始值为1*/
    do x=2 to 10 by 2 until ( y>=3000);    /*执行循环直到y的值大于等于3000*/
    y=y*x;                                 /*y的值为前一次循环结束后y的值和当次循环x值的乘积*/
    output;
    end;
    run;选择Run|Submit命令提交程序,则新建与SAS数据集chap2.example2_2完全一样的数据集。

以上详述的SAS语言中常用的三种循环语句DO、DO W HILE、DO UNTIL都可以在DATA步中实现循环操作,它们的主要区别在于:DO循环通常不设定限制条件;DO WHILE和DO UNTIL循环都设置了循环条件;DO WHILE的条件在循环体开头,而DO UNTIL的条件在循环体的结束。

页: [1]
查看完整版本: SAS循环控制语句--DO UNTIL循环