ILE COBOL 解説書

コーディング例

EVALUATE ステートメントの簡単な例

EVALUATE  MENU-INPUT
    WHEN "0"
        PERFORM INIT-PROC
    WHEN "1" THRU "9"
        PERFORM PROCESS-PROC
    WHEN "R"
        PERFORM READ-PARMS
    WHEN "X"
        PERFORM CLEANUP-PROC
    WHEN OTHER
        PERFORM ERROR-PROC
END-EVALUATE.
 

対応する IF ステートメント

IF (MENU-INPUT = "0") THEN
   PERFORM INIT-PROC
ELSE
   IF (MENU-INPUT >= "1") AND (MENU-INPUT <= "9") THEN
      PERFORM PROCESS-PROC
   ELSE
      IF (MENU-INPUT = "R") THEN
         PERFORM READ-PARMS
      ELSE
         IF (MENU-INPUT = "X") THEN
            PERFORM CLEANUP-PROC
         ELSE
            PERFORM ERROR-PROC
         END-IF
     END-IF
   END-IF
END-IF.
 

次の例は、EVALUATE ステートメントおよびそれに対応する IF ステートメントの、より複雑な例です。

EVALUATE ステートメントの複雑な例

EVALUATE  A = B  ALSO  C > D  ALSO  TRUE
    WHEN  TRUE   ALSO  TRUE   ALSO  E = F + 15
        imp-stat-1
    WHEN  TRUE   ALSO  TRUE   ALSO  E > 12
        imp-stat-2
    WHEN  TRUE   ALSO  FALSE  ALSO  ANY
        imp-stat-3
    WHEN  FALSE  ALSO  TRUE   ALSO  ANY
        imp-stat-4
    WHEN  FALSE  ALSO  FALSE  ALSO  ANY
        imp-stat-5
END-EVALUATE.

対応する IF ステートメント

IF A = B THEN
    IF C > D THEN
        IF E = F + 15 THEN
            imp-stat-1
        ELSE
            IF E > 12 THEN
                imp-stat-2
            END-IF
        END-IF
    ELSE
        imp-stat-3
    END-IF
ELSE
    IF C > D THEN
        imp-stat-4
    ELSE
        imp-stat-5
    END-IF
END-IF.


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]