This test is designed to assess a candidate's advanced knowledge of the COBOL programming language. It will cover topics such as file handling, program structure, error handling, arrays/tables, batches, and the basics of COBOL. The test will require the candidate to demonstrate their understanding of these topics by answering multiple-choice questions and writing code snippets. The test is intended to evaluate the candidate's ability to use COBOL in a professional setting.
Example Question:
IDENTIFICATION DIVISION.
PROGRAM-ID. STRING-REVERSE.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-INPUT-STRING PIC X(50) VALUE "hello world".
01 WS-OUTPUT-STRING PIC X(50).
01 WS-STRING-LENGTH PIC 9(3) VALUE 0.
01 WS-LEFT PIC 9(3) VALUE 0.
01 WS-RIGHT PIC 9(3) VALUE 0.
01 WS-SWAP-CHAR PIC X.
PROCEDURE DIVISION.
MOVE FUNCTION LENGTH(WS-INPUT-STRING) TO WS-STRING-LENGTH
IF WS-STRING-LENGTH <= 1
MOVE WS-INPUT-STRING TO WS-OUTPUT-STRING
DISPLAY "Output: " WS-OUTPUT-STRING
GOBACK
END-IF
MOVE WS-INPUT-STRING TO WS-OUTPUT-STRING
MOVE 1 TO WS-LEFT
MOVE WS-STRING-LENGTH TO WS-RIGHT
PERFORM UNTIL WS-LEFT >= WS-RIGHT
MOVE WS-OUTPUT-STRING(WS-LEFT:1) TO WS-SWAP-CHAR
MOVE WS-OUTPUT-STRING(WS-RIGHT:1) TO WS-OUTPUT-STRING(WS-LEFT:1)
MOVE WS-SWAP-CHAR TO WS-OUTPUT-STRING(WS-RIGHT:1)
ADD 1 TO WS-LEFT
SUBTRACT 1 FROM WS-RIGHT
END-PERFORM
DISPLAY "Output: " WS-OUTPUT-STRING
STOP RUN.