Can set up a non-incremental DO loop which, on some iterations, only executes a subset of the statements in the body of the loop,
DO DO ... IF (a.GT.b) EXIT ... IF (a.EQ.b) CYCLE ... END DO IF (c.GT.d) EXIT END DO
CYCLE forces control to the innermost active DO statement and the loop begins a new iteration.
For more information, click here