首页 > 代码库 > EXIT,CONTINUE,CHECK(ロープの終了)

EXIT,CONTINUE,CHECK(ロープの終了)

1.EXIT

ループを無条件に終了する。

ループの中に指定したEXIT命令は、ループを完全に終了し、ループの最後の命令の後のプログラムフローを続行する。

メモ:

ループの外部でEXIT命令を使用すると、現在の処理ブルックが終了する。

例:ループ索引sy-indexが数値limitより大きくなったら、EXITによってループを終了する。

DO.

  IF SY-INDEX > LIMIT.

    EXIT.

  ENDIF.

  WRITE/ SY-INDEX.

ENDDO.

 

2.CONTINUE.

ループパスを無条件に終了する。

CONTINUE命令は、ループの中だけで使用できる。この命令は現在のループパスを直ちに終了し、次のループパスに移ってプログラムフローを続行する。

例:ループ索引SY-INDEXが奇数になったら、CONTINUEによってループを終了する。

DO 20 TIMES.

  remainder = sy-index mod 2.

  IF  remainder <> o.

     continue.

  ENDIF.

  WRITE:/ SY-INDEX.

ENDDO.

 

3.CHECK

ループパスを条件付で終了する。

ループの中に指定したCHECK命令は、log_expが偽であれば直ちに現在のループパスを終了し、次のループパスに移ってプログラムフローを続行する。

log_expには任意の論理式を指定できる。

メモ:

ループの外部でcheck命令を利用すると、現在の処理ブロックが終了する。

例:

ループ索引sy-indexが奇数になったら、checkによってループを終了する。

DO 20 TIMES.

  remainder = sy-index mod 2.

  CHECK remainder = 0.

  WRITE:/SY-INDEX.

ENDDO.

 

EXIT,CONTINUE,CHECK(ロープの終了)