You can include an IF construct in the statement block of another IF construct, if the nested IF construct is completely contained within a statement block. It cannot overlap statement blocks.
The following shows a nested IF construct:
Form Example IF (expr) THEN IF (A .LT. 100) THEN block1 INRAN = INRAN + 1 IF (expr2) THEN IF (ABS(A-AVG) .LE. 5.) THEN block1a INAVG = INAVG + 1 ELSE ELSE block1b OUTAVG = OUTAVG + 1 END IF END IF ELSE ELSE block2 OUTRAN = OUTRAN + 1 END IF END IF
If A is less than 100, the code immediately after the IF is executed. This code contains a nested IF construct. If the absolute value of A minus AVG is less than or equal to 5, block1a is executed. If the absolute value of A minus AVG is greater than 5, block1b is executed.
If A is greater than or equal to 100, block2 is executed, and the nested IF construct (in block1) is not executed.