Comment detail

九九の表示 (Nested Flatten)

特に工夫はありません。COBOL向きのお題かもしれませんね。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
* 九九の表示 - YCobol 0.19にて動作確認
IDENTIFICATION DIVISION.
PROGRAM-ID. DOUKAKU-62.
*
ENVIRONMENT DIVISION.
*
DATA DIVISION.
WORKING-STORAGE SECTION.
01 I PIC 9 VALUE 0.
01 J PIC 9.
01 K PIC Z9.
*
PROCEDURE DIVISION.
MAIN.
    PERFORM UNTIL I >= 9
        MOVE 0 TO J
        ADD 1 TO I
        PERFORM UNTIL J >= 9
            ADD 1 TO J
            COMPUTE K = I * J
            DISPLAY I " * " J " = " K
        END-PERFORM
    END-PERFORM
    STOP RUN.

http://ja.doukaku.org/comment/6132/は一般のCOBOLではなくYCobol独自の書式だったので、より一般的な書式のものに書き換えました。 OpenCOBOLでのコンパイルに成功、動作確認済み。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
       IDENTIFICATION DIVISION.
       PROGRAM-ID. DOUKAKU-62.
      *
       ENVIRONMENT DIVISION.
      *
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  WK-KUKU.
           03 L      PIC 9.
           03 FILLER PIC X(3) VALUE " * ".
           03 R      PIC 9.
           03 FILLER PIC X(3) VALUE " = ".
           03 RESULT PIC Z9.
      *
       PROCEDURE DIVISION.
           MOVE ZERO TO L.
           PERFORM UNTIL L = 9
               ADD 1 TO L
               MOVE ZERO TO R
               PERFORM UNTIL R = 9
                   ADD 1 TO R
                   MULTIPLY L BY R GIVING RESULT
                   DISPLAY WK-KUKU
               END-PERFORM
           END-PERFORM.
           STOP RUN.

Index

Feed

Other

Link

Pathtraq

loading...