Rational Developer for System z
COBOL for Windows バージョン 7.5 言語解説書


IF ステートメント

IF ステートメントは条件を評価し、その評価結果に応じてオブジェクト・プログラム中で処置を選択できるようにします。

フォーマット
構文図を読む構文図をスキップする                           .------------------.    
                           V                  |    
>>-IF--条件-1--+------+--+---ステートメント-1-+-+--------------->
               '-THEN-'  '-NEXT SENTENCE--------'  
 
>--+--------------------------------+--+-------------+---------><
   |         .------------------.   |  |        (1)  |  
   |         V                  |   |  '-END-IF------'  
   '-ELSE--+---ステートメント-2-+-+-'                   
           '-NEXT SENTENCE--------'                     
 

注:
  1. END-IF はステートメント-2 または NEXT SENTENCE と共に指定することができます。
条件-1
これは、単純条件にも複合条件にもすることができます (条件式を参照)。
ステートメント-1ステートメント-2
次のいずれかにできます。
NEXT SENTENCE
NEXT SENTENCE 句を指定すると、次の分離文字ピリオド の直後にある暗黙の CONTINUE ステートメントに制御が渡されます。

NEXT SENTENCE を END-IF と共に指定すると、END-IF の後のステートメントに制御が 渡されるのではなく、最も近い後続のピリオドの後のステートメントに制御が渡されます。

 

END-IF 句

この明示的範囲終了符号は、IF ステートメントの範囲を区切るために使用されます。 END-IF 句を使うことによって、 条件付き IF ステートメントを他の条件ステートメント中にネストすることができます。明示的範囲終了符号の詳細については、範囲区切りステートメントを参照してください。

IF ステートメントの範囲は、次のいずれかにより終わらせることができます。

制御の移動

テストされた条件が、真であれば、次に示す処置の 1 つが取られます。

テストされた条件が、偽であれば、次に示す処置の 1 つが取られます。

ELSE 句が省略されている場合には、この条件の後に続く、 対応する END-IF 句、または、分離文字ピリオドの前までにあるすべてのステートメントは、ステートメント-1 の一部とみなされます。

ネストされた IF ステートメント

IF ステートメントがステートメント-1 またはステートメント-2 として現れるか、またはステートメント-1 またはステートメント-2 の一部として現れる場合、この IF ステートメントはネストされた IF ステートメントです。

ネストされた IF ステートメントは、左から右に処理される、一致した IF、ELSE、および END-IF の組み合わせとみなされます。したがって、検出される ELSE はすべて、 最も近い場所にある先行の IF (まだ ELSE と一致していないか、または暗黙的あるいは明示的に終了されていないもの) と一致します。検出される END-IF はすべて、暗黙的または明示的に終了されていない、先行の最も近い場所にある IF と一致します。


ご利用条件 | フィードバック

Copyright IBM Corporation 1996, 2008.
このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)