To search all
000100 IDENTIFICATION DIVISION. 00010000
000200 PROGRAM-ID. SEARALL2 00020000
000300 ENVIRONMENT DIVISION. 00030000
000400 INPUT-OUTPUT SECTION. 00040000
000500 FILE-CONTROL. 00050000
000600 SELECT INFILE ASSIGN TO INDD. 00060000
000700* SELECT OUTFILE ASSIGN TO OUTDD. 00070000
000800 DATA DIVISION. 00080000
000900 FILE SECTION. 00090000
001000 FD INFILE. 00100000
001100 01 IN-REC. 00110000
001200 02 IN-STU-ID PIC 9(5). 00120000
001300 02 IN-STU-NAME PIC X(10). 00130000
001400 02 IN-SUB-NAME PIC X(5). 00140000
001500 02 IN-MARKS-SUB PIC 9(3). 00150000
001600 02 FILLER PIC X(57). 00160000
001700*FD OUTFILE. 00170000
001800*01 OUT-REC. 00180000
001900* 02 OUT-STU-ID PIC 9(5). 00190000
002000* 02 OUT-STU-NAME PIC X(10). 00200000
002100* 02 OUT-SUB-NAME PIC X(5). 00210000
002200* 02 OUT-MARKS-SUB PIC 9(3). 00220000
002300* 02 FILLER PIC X(57). 00230000
002400 WORKING-STORAGE SECTION. 00240000
002500 01 TABLE1. 00250000
002600 02 STU-DETAILS OCCURS 4 TIMES 00260001
002610 ASCENDING KEY IS IN-STU-ID 00261000
002700 INDEXED BY F1. 00270000
002800 03 STU-ID PIC 9(5). 00280000
002900 03 STU-NAME PIC X(10). 00290000
003000 03 MARKS-DETAILS OCCURS 4 TIMES INDEXED BY F2. 00300001
003100 04 SUB-NAME PIC X(5). 00310000
003200 04 MARKS-SUB PIC 9(3). 00320000
003300 01 AA PIC 9(3). 00330000
003400 01 FLAG PIC X VALUE 'N'. 00340000
003500 88 EOF VALUE 'Y'. 00350000
003600 88 NOT-EOF VALUE 'N'. 00360000
003700 PROCEDURE DIVISION. 00370000
003800 PERFORM OPEN-PARA. 00380000
003900 SET F1 TO 1. 00390000
004000 PERFORM READ-PARA UNTIL F1 > 4. 00400001
004100 SET F1 TO 1. 00410000
004200 SET F2 TO 1. 00420000
004300 PERFORM SEARCH-PARA UNTIL F1 > 4. 00430001
004400 PERFORM CLOSE-PARA. 00440000
004500 STOP RUN. 00450000
004600 OPEN-PARA. 00460000
004700 OPEN INPUT INFILE. 00470000
004800 ACCEPT AA. 00480000
004900 DISPLAY ' AA ' AA. 00490000
005000 READ-PARA. 00500000
005100 READ INFILE INTO STU-DETAILS(F1). 00510000
005200 DISPLAY STU-DETAILS(F1). 00520000
005300 SET F1 UP BY 1. 00530000
005400 SEARCH-PARA. 00540000
005500 DISPLAY 'SEARCH PARA' STU-DETAILS(F1). 00550000
005600 SET F2 TO 1. 00560000
005700 PERFORM SEARCH-PARA1. 00570003
005800 SET F1 UP BY 1. 00580000
005900 SEARCH-PARA1. 00590000
006000 SEARCH ALL MARKS-DETAILS AT END 00600000
006100 DISPLAY 'NO PROCESS' 00610000
006200 WHEN MARKS-DETAILS(F1 , F2) = AA 00620002
006300 DISPLAY ' SUB-NAM =' SUB-NAME(F1 , F2) 00630000
006400 DISPLAY ' SUB-MAR =' MARKS-SUB(F1 , F2) 00640000
006500 END-SEARCH. 00650000
006600* SET F2 UP BY 1. 00660003
006700 CLOSE-PARA. 00670000
006800 CLOSE INFILE. 00680000
000100 IDENTIFICATION DIVISION. 00010000
000200 PROGRAM-ID. SEARALL2 00020000
000300 ENVIRONMENT DIVISION. 00030000
000400 INPUT-OUTPUT SECTION. 00040000
000500 FILE-CONTROL. 00050000
000600 SELECT INFILE ASSIGN TO INDD. 00060000
000700* SELECT OUTFILE ASSIGN TO OUTDD. 00070000
000800 DATA DIVISION. 00080000
000900 FILE SECTION. 00090000
001000 FD INFILE. 00100000
001100 01 IN-REC. 00110000
001200 02 IN-STU-ID PIC 9(5). 00120000
001300 02 IN-STU-NAME PIC X(10). 00130000
001400 02 IN-SUB-NAME PIC X(5). 00140000
001500 02 IN-MARKS-SUB PIC 9(3). 00150000
001600 02 FILLER PIC X(57). 00160000
001700*FD OUTFILE. 00170000
001800*01 OUT-REC. 00180000
001900* 02 OUT-STU-ID PIC 9(5). 00190000
002000* 02 OUT-STU-NAME PIC X(10). 00200000
002100* 02 OUT-SUB-NAME PIC X(5). 00210000
002200* 02 OUT-MARKS-SUB PIC 9(3). 00220000
002300* 02 FILLER PIC X(57). 00230000
002400 WORKING-STORAGE SECTION. 00240000
002500 01 TABLE1. 00250000
002600 02 STU-DETAILS OCCURS 4 TIMES 00260001
002610 ASCENDING KEY IS IN-STU-ID 00261000
002700 INDEXED BY F1. 00270000
002800 03 STU-ID PIC 9(5). 00280000
002900 03 STU-NAME PIC X(10). 00290000
003000 03 MARKS-DETAILS OCCURS 4 TIMES INDEXED BY F2. 00300001
003100 04 SUB-NAME PIC X(5). 00310000
003200 04 MARKS-SUB PIC 9(3). 00320000
003300 01 AA PIC 9(3). 00330000
003400 01 FLAG PIC X VALUE 'N'. 00340000
003500 88 EOF VALUE 'Y'. 00350000
003600 88 NOT-EOF VALUE 'N'. 00360000
003700 PROCEDURE DIVISION. 00370000
003800 PERFORM OPEN-PARA. 00380000
003900 SET F1 TO 1. 00390000
004000 PERFORM READ-PARA UNTIL F1 > 4. 00400001
004100 SET F1 TO 1. 00410000
004200 SET F2 TO 1. 00420000
004300 PERFORM SEARCH-PARA UNTIL F1 > 4. 00430001
004400 PERFORM CLOSE-PARA. 00440000
004500 STOP RUN. 00450000
004600 OPEN-PARA. 00460000
004700 OPEN INPUT INFILE. 00470000
004800 ACCEPT AA. 00480000
004900 DISPLAY ' AA ' AA. 00490000
005000 READ-PARA. 00500000
005100 READ INFILE INTO STU-DETAILS(F1). 00510000
005200 DISPLAY STU-DETAILS(F1). 00520000
005300 SET F1 UP BY 1. 00530000
005400 SEARCH-PARA. 00540000
005500 DISPLAY 'SEARCH PARA' STU-DETAILS(F1). 00550000
005600 SET F2 TO 1. 00560000
005700 PERFORM SEARCH-PARA1. 00570003
005800 SET F1 UP BY 1. 00580000
005900 SEARCH-PARA1. 00590000
006000 SEARCH ALL MARKS-DETAILS AT END 00600000
006100 DISPLAY 'NO PROCESS' 00610000
006200 WHEN MARKS-DETAILS(F1 , F2) = AA 00620002
006300 DISPLAY ' SUB-NAM =' SUB-NAME(F1 , F2) 00630000
006400 DISPLAY ' SUB-MAR =' MARKS-SUB(F1 , F2) 00640000
006500 END-SEARCH. 00650000
006600* SET F2 UP BY 1. 00660003
006700 CLOSE-PARA. 00670000
006800 CLOSE INFILE. 00680000
No comments:
Post a Comment