Sie sind auf Seite 1von 5

TO DISPLAY A MESSAGE ON THE SCREEN. ID DIVISION. PROGRAM-ID. SAMPGM26 DATA DIVISION. WORKING-STORAGE SECTION. 77 LEN PIC S9(4) COMP.

77 MSG PIC X(10). PROCEDURE DIVISION. START-PARA. MOVE 'WELCOME' TO MSG. MOVE 7 TO LEN. EXEC CICS SEND FROM(MSG) LENGTH(LEN) END-EXEC. EXEC CICS RETURN END-EXEC. CLEARS THE SCREEN AND THEN DISPLAYS THE MESSAGE. ID DIVISION. PROGRAM-ID. LEN. DATA DIVISION. WORKING-STORAGE SECTION. 77 LEN PIC S9(4) COMP. 77 MSG PIC X(10). PROCEDURE DIVISION. START-PARA. MOVE 'WELCOME' TO MSG. MOVE 10 TO LEN. EXEC CICS SEND FROM(MSG) LENGTH(LEN) ERASE END-EXEC. EXEC CICS RETURN END-EXEC.

DISPLAYS THE MESSAGE ON THE SCREEN AT THE POSITION (5,10) ID DIVISION. PROGRAM-ID. LEN. DATA DIVISION. WORKING-STORAGE SECTION. 77 LEN PIC S9(4) COMP. 77 MSG PIC X(40). PROCEDURE DIVISION. START-PARA. MOVE 'WELCOME' TO MSG. MOVE 20 TO LEN. EXEC CICS SEND CONTROL CURSOR(330) END-EXEC. EXEC CICS SEND FROM(MSG) LENGTH(LEN)

END-EXEC. EXEC CICS RETURN END-EXEC. // THIS PROGRAM RECEIVES THE TEXT FROM SCREEN (user) AND THEN DISPLAYS IT ON T HE SCREEN ID DIVISION. PROGRAM-ID. LEN. DATA DIVISION. WORKING-STORAGE SECTION. 77 LEN PIC S9(4) COMP VALUE 20. 77 MSG PIC X(40). PROCEDURE DIVISION. START-PARA. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS RECEIVE INTO(MSG) LENGTH(LEN) END-EXEC. EXEC CICS SEND FROM(MSG) LENGTH(LEN) END-EXEC. EXEC CICS RETURN END-EXEC.

ID DIVISION. PROGRAM-ID. LEN. DATA DIVISION. WORKING-STORAGE SECTION. 77 LEN PIC S9(4) COMP VALUE 5. 01 MSG. 02 A PIC 9(2). 02 O PIC x. 02 B PIC 9(2). 77 C PIC 999. PROCEDURE DIVISION. START-PARA. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS RECEIVE INTO(MSG) LENGTH(LEN) END-EXEC. EVALUATE O WHEN '+' COMPUTE C = A + WHEN '-' COMPUTE C = A WHEN '*' COMPUTE C = A * WHEN '/' COMPUTE C = A /

B B B B

END-EVALUATE. MOVE 3 TO LEN. EXEC CICS SEND FROM(C) LENGTH(LEN) END-EXEC. EXEC CICS RETURN END-EXEC. EXEC CICS HANDLE CONDITION condition(label) .. .. END-EXEC. ID DIVISION. PROGRAM-ID. LEN. DATA DIVISION. WORKING-STORAGE SECTION. 77 LEN PIC S9(4) COMP VALUE 5. 01 MSG. 02 A PIC 9(2). 02 O PIC X. 02 B PIC 9(2). 77 C PIC 999. 77 MSG1 PIC X(20). PROCEDURE DIVISION. START-PARA. EXEC CICS HANDLE CONDITION LENGERR(LEN-PARA) END-EXEC. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS RECEIVE INTO(MSG) LENGTH(LEN) END-EXEC. IF O = '+' COMPUTE C = A + B. IF O = '-' COMPUTE C = A - B. IF O = '*' COMPUTE C = A * B. IF O = '/' COMPUTE C = A / B. MOVE 3 TO LEN. EXEC CICS SEND FROM(C) LENGTH(LEN) END-EXEC. EXEC CICS RETURN END-EXEC. LEN-PARA. MOVE 20 TO LEN. MOVE 'INVALID LENGTH' TO MSG1. EXEC CICS SEND FROM(MSG1)

LENGTH(LEN) ERASE END-EXEC. EXEC CICS RETURN END-EXEC.

RESP ---------ID DIVISION. PROGRAM-ID. LEN. DATA DIVISION. WORKING-STORAGE SECTION. 77 LEN PIC S9(4) COMP VALUE 5. 01 MSG. 02 A PIC 9(2). 02 O PIC A. 02 B PIC 9(2). 77 C PIC 999. 77 MSG1 PIC X(20). 77 RESPON PIC S9(8) COMP. PROCEDURE DIVISION. START-PARA. EXEC CICS SEND CONTROL ERASE END-EXEC. EXEC CICS RECEIVE INTO(MSG) LENGTH(LEN) RESP(RESPON) END-EXEC. IF RESPON = DFHRESP(LENGERR) GO TO LEN-PARA. IF O = '+' COMPUTE C = A + B. IF O = '-' COMPUTE C = A - B. IF O = '*' COMPUTE C = A * B. IF O = '/' COMPUTE C = A / B. MOVE 3 TO LEN. EXEC CICS SEND FROM(C) LENGTH(LEN) END-EXEC. EXEC CICS RETURN END-EXEC. LEN-PARA. MOVE 20 TO LEN. MOVE 'INVALID LENGTH' TO MSG1. EXEC CICS SEND FROM(MSG1) LENGTH(LEN) ERASE END-EXEC. EXEC CICS RETURN END-EXEC.

Das könnte Ihnen auch gefallen