IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 MY-COLORS.
03 MY-COLOR OCCURS 3 PIC X(10).
PROCEDURE DIVISION.
MAIN SECTION.
MOVE "red" TO MY-COLOR(1).
MOVE "yellow" TO MY-COLOR(2).
MOVE "blue" TO MY-COLOR(3).
DISPLAY MY-COLORS.
DISPLAY MY-COLOR(2).
STOP RUN.
[vagrant@localhost cobol]$ cobc -x --free hello.cob [vagrant@localhost cobol]$ ./hello red yellow blue yellow
演算
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 MY-DATA.
03 D1 PIC 99999 VALUE 0.
03 D2 PIC 99999 VALUE 0.
03 D3 PIC 99999 VALUE 0.
03 D4 PIC 99999 VALUE 0.
PROCEDURE DIVISION.
MAIN SECTION.
ADD 5 TO D1 D2 D3.
SUBTRACT 2 FROM D1 D2.
DISPLAY MY-DATA.
STOP RUN.
入力受付
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 MY-DATA PIC X(10).
PROCEDURE DIVISION.
MAIN SECTION.
DISPLAY "whats your name?".
ACCEPT MY-DATA.
DISPLAY "hello! " MY-DATA.
STOP RUN.
条件分岐
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 MY-SCORE PIC 9(3).
PROCEDURE DIVISION.
MAIN SECTION.
MOVE 80 TO MY-SCORE.
If MY-SCORE > 60 THEN
DISPLAY "OK!"
END-IF.
STOP RUN.
条件分岐
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 MY-SIGNAL PIC X(5).
PROCEDURE DIVISION.
MAIN SECTION.
MOVE "red" TO MY-SIGNAL.
EVALUATE MY-SIGNAL
WHEN "red"
DISPLAY "stop!"
WHEN "blue"
DISPLAY "run!"
WHEN "yello"
DISPLAY "caution!"
END-EVALUATE.
STOP RUN.
繰り返し処理
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 MY-COUNTER PIC 9(3) VALUE 1.
PROCEDURE DIVISION.
MAIN SECTION.
PERFORM 10 TIMES
DISPLAY "counter = " MY-COUNTER
ADD 1 TO MY-COUNTER
END-PERFORM.
STOP RUN.
ファイルの書き込み
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT OUT-FILE ASSIGN TO 'out.txt'
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD OUT-FILE.
01 OUT-FILE-REC PIC 99.
WORKING-STORAGE SECTION.
01 LINE-COUNT PIC 99 VALUE 0.
PROCEDURE DIVISION.
MAIN SECTION.
OPEN OUTPUT OUT-FILE.
PERFORM 10 TIMES
ADD 1 TO LINE-COUNT
MOVE LINE-COUNT TO OUT-FILE-REC
WRITE OUT-FILE-REC
DISPLAY OUT-FILE-REC
END-PERFORM.
CLOSE OUT-FILE.
STOP RUN.
ファイルの読み出し
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT IN-FILE ASSIGN TO 'in.txt'
ORGANIZATION IS LINE SEQUENTIAL
STATUS IN-FILE-STATUS.
DATA DIVISION.
FILE SECTION.
FD IN-FILE.
01 In-FILE-REC PIC X(20).
WORKING-STORAGE SECTION.
01 IN-FILE-STATUS PIC XX.
PROCEDURE DIVISION.
MAIN SECTION.
OPEN INPUT IN-FILE.
PERFORM UNTIL IN-FILE-STATUS NOT = "00"
READ IN-FILE
AT END
DISPLAY "-- end --"
NOT AT END
DISPLAY "Content: " IN-FILE-REC
END-READ
END-PERFORM.
CLOSE IN-FILE.
STOP RUN.