Files
cobol-java-v3/test-data/cobol/hina_all/H001-MATCH-1TO1.cbl
T
NB-076 50995d3335 chore: SETUP.md + 测试报告脚本 + 文档更新
- SETUP.md: 完整环境搭建指南(同事用)
- SETUP_QUICK.md: 快速搭环境(4步)
- s22~s26: TNA端到端、覆盖率报告、回归检查
- procedure_grammar.lark: 实验性Lark语法

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-25 08:50:17 +08:00

34 lines
1.3 KiB
COBOL

* HINA 001: 1:1 MATCHING
* 2 input files, IF KEY compare, 3-way branching
IDENTIFICATION DIVISION.
PROGRAM-ID. H001.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT FILE-A ASSIGN TO 'FILEA.DAT'.
SELECT FILE-B ASSIGN TO 'FILEB.DAT'.
DATA DIVISION.
FILE SECTION.
FD FILE-A. 01 REC-A PIC X(80).
FD FILE-B. 01 REC-B PIC X(80).
WORKING-STORAGE SECTION.
01 WS-KEY-A PIC X(10). 01 WS-KEY-B PIC X(10).
01 WS-EOF-A PIC X VALUE 'N'. 01 WS-EOF-B PIC X VALUE 'N'.
PROCEDURE DIVISION.
MAIN.
OPEN INPUT FILE-A FILE-B.
READ FILE-A INTO REC-A AT END MOVE 'Y' TO WS-EOF-A.
READ FILE-B INTO REC-B AT END MOVE 'Y' TO WS-EOF-B.
PERFORM UNTIL WS-EOF-A = 'Y' OR WS-EOF-B = 'Y'
IF WS-KEY-A = WS-KEY-B
DISPLAY 'MATCH'
READ FILE-A AT END MOVE 'Y' TO WS-EOF-A
READ FILE-B AT END MOVE 'Y' TO WS-EOF-B
ELSE IF WS-KEY-A < WS-KEY-B
READ FILE-A AT END MOVE 'Y' TO WS-EOF-A
ELSE
READ FILE-B AT END MOVE 'Y' TO WS-EOF-B
END-IF
END-PERFORM.
CLOSE FILE-A FILE-B. STOP RUN.