前のページ|次のページ

DO WHILEステートメント

条件が真の間、DOループ内のステートメントを繰り返し実行します。

該当要素: DATAステップ
カテゴリ: 制御
種類: 実行

構文

DO WHILE (expression);
...more SAS statements...
END;

引数

(expression)

SAS式を丸かっこで囲んで指定します。少なくとも1つのexpressionを指定する必要があります。

詳細

式は、ループの最初にDOループのステートメントの実行前に評価されます。この式が真の場合、DOループは繰り返し実行されます。この式が最初の評価時に偽となる場合、DOループは1度も実行されません。

比較

DOステートメントは、他に3種類あります。
  • DOステートメントは、DOグループの処理を指定するもっとも簡単な形式です。通常、IF-THEN/ELSEステートメントの中で使用され、1単位として実行するステートメントのグループを指定します。
  • 反復DOステートメントは、インデックス変数の値に基づいて、DOステートメントとENDステートメントにはさまれている各ステートメントを実行します。
  • DO UNTILステートメントは、DOループを繰り返した後に条件を毎回確認して、条件が真になるまでDOループ内のステートメントを実行します。DO WHILEステートメントではループの最初に条件を評価するのに対し、DO UNTILステートメントではループの最後に条件を評価します。
    注: 式の評価結果が偽の場合、DO WHILEループのステートメントは実行されません。ただし、DO UNTILの式はループの最後に評価されるため、DO UNTILループのステートメントは少なくとも1度実行されます。

例: DO WHILEステートメントの使用

次のステートメントでは、Nの値が5未満の間ループが繰り返されます。式N<5はループの最初に評価されます。(Nの値が0、1、2、3、4の)全部で5回繰り返しが実行されます。
n=0;
   do while(n<5);
      put n=;
      n+1;
   end;

関連項目:

前のページ|次のページ|ページの先頭へ