IF ステートメントが、 可能な分岐の 1 つとして IF ステートメントを含む場合、これらの IF ステートメントはネストされている といいます。 論理上は、ネストされた IF ステートメントの深さに制限はありません。
ただし、ネストされた IF ステートメントを多用しないでください。明示範囲終了符号および字下げが役に立つとはいえ、ロジックをたどるのが困難になる可能性があります。プログラムが 2 つを超える値について変数をテストしなければならない場合には、EVALUATE を使用する方が適切です。
以下に、ネストされた IF ステートメントの疑似コードを示します。
IF condition-p IF condition-q statement-1 ELSE statement-2 END-IF statement-3 ELSE statement-4 END-IF
上の疑似コードで、IF ステートメントと順次構造は、 外側の IF の 1 つの分岐でネストされています。このような構造では、ネストされた IF を閉じる END-IF が非常に重要になります。ピリオドは外側の IF 構造も終了させるため、ピリオドではなく END-IF を使用してください。
次の図は、上の疑似コードの論理構造を示しています。

関連タスク
アクションの選択項目のコーディング
関連参照
明示範囲終了符号
(「COBOL for Windows 言語解説書」)