Step 1. 프로그램 신분증 만들기 (IDENTIFICATION)
프로그램의 고유 이름을 정의하는 단계임. 8칸(Area A) 규칙이 최초로 적용되는 구역이다.
cobol code
12345678901234567890123456789012345678901234567890123456789012345678901234567890
000100 IDENTIFICATION DIVISION.
000200* ====== 7번째 칸에 별표(*)를 찍으면 이 줄은 주석이 됨 ======
000300 PROGRAM-ID. STEP-BY-STEP.
000400* [A영역] 디비전과 프로그램ID 키워드는 반드시 8번째 칸부터 시작함.
Step 2. 환경 설정과 장치 연결 (ENVIRONMENT)
하드웨어 환경과 외부에 출력할 파일 경로를 연결해 주는 단계임.
cobol code
12345678901234567890123456789012345678901234567890123456789012345678901234567890
000500 ENVIRONMENT DIVISION.
000600 CONFIGURATION SECTION.
000700 INPUT-OUTPUT SECTION.
000800* [A영역] 하위 섹션(SECTION) 이름들도 8번째 칸 규칙을 엄수해야 함.
000900 FILE-CONTROL.
001000* [B영역] 파일 제어 명령(SELECT)은 12번째 칸 안쪽에서 시작함.
001100 SELECT OUT-FILE ASSIGN TO "result.txt".
Step 3. 메모리 변수 준비 (DATA)
실제 계산에 사용할 숫자 변수들을 선언하는 단계임. 변수의 계층 구조를 칼럼 들여쓰기로 표현한다.
cobol code
12345678901234567890123456789012345678901234567890123456789012345678901234567890
001200 DATA DIVISION.
001300 WORKING-STORAGE SECTION.
001400* [A영역] 가장 큰 묶음인 '01' 레벨 변수는 8번째 칸에 적어줌.
001500 01 SCORE-GROUP.
001600* [B영역] 01에 소속된 세부 변수(05)들은 12번째 칸 안쪽으로 들여씀.
001700 05 KOR-SCORE PIC 9(03) VALUE 90.
001800 05 ENG-SCORE PIC 9(03) VALUE 85.
001900 05 TOTAL-SUM PIC 9(03) VALUE ZERO.
Step 4. 사칙연산과 출력 실행 (PROCEDURE)
실제 로직을 수행하고 결과값을 화면에 보여주는 실행부 영역이다.
cobol code
12345678901234567890123456789012345678901234567890123456789012345678901234567890
002000 PROCEDURE DIVISION.
002100 MAIN-LOGIC SECTION.
002200* [A영역] 로직의 구역을 나누는 문단(Paragraph) 이름은 8번째 칸에 작성함.
002300 A100-CALC-PROCESS.
002400* [B영역] 값을 더하고(ADD), 화면에 보여주는(DISPLAY) 명령어는 무조건 12번째 칸 시작임.
002500 ADD KOR-SCORE TO ENG-SCORE GIVING TOTAL-SUM.
002600 DISPLAY "TOTAL SCORE IS : " TOTAL-SUM.
002700* [B영역] 프로그램 종료를 알리는 명령어 역시 12번째 칸에서 마무리함.
002800 STOP RUN.
다음 편은 프로그램의 핵심인 데이터를 다루는 PIC(PICTURE) 구문을 주제로 잡고 빌드업하는 것이 좋을듯 싶다.
전 편에서 디비전과 섹션을 만드는 틀을 배웠으니, 이번에는 그 안을 채울 숫자(9), 문자(X), 소수점(V), 부호(S)라는 데이터 재료를 다루는 실전 사례로 넘어가는 방식으로 진행해보겠다.
'프로그래밍 > RM-COBOL' 카테고리의 다른 글
| [COBOL 기초] 반복문(PERFORM UNTIL)으로 대량 데이터 처리하는 COBOL code 작성법 (0) | 2026.06.22 |
|---|---|
| [COBOL 기초] 조건문(IF ~ END-IF)으로 합격/불합격 판별하는 COBOL code 작성법 (0) | 2026.06.22 |
| [COBOL 기초] 소수점 편집 마스크(PIC Z, .)와 COBOL code 변환 출력법 (0) | 2026.06.22 |
| [COBOL 기초] 국영수 총점/평균 프로그램 실습: PIC 999와 9(03) 완벽 비교 (0) | 2026.06.22 |
| [COBOL 기초] 프로그램 코드로 쉽게 이해하는 코볼(COBOL)의 구조와 칼럼 규칙 (0) | 2026.06.22 |