IDENTIFICATION DIVISION.
PROGRAM-ID. SEQ-RET.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT STUD-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT STUD-REPORT ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD STUD-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUD1.DAT".
01 STUD-REC.
02 ROLL-NO PIC 9(5).
02 NAME PIC X(20).
02 SUBJECT PIC X(10).
02 MARKS PIC 99.
FD STUD-REPORT
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUD2.DAT".
01 STUD-OUT-REC PIC X(80).
WORKING-STORAGE SECTION.
77 TMARKS PIC 999.
77 R-NUM PIC 9(5).
77 NOS PIC X(20).
77 A PIC 999.
01 MAIN-HEADING.
02 FILLER PIC X(7) VALUE "ROLL-NO".
02 FILLER PIC X(4) VALUE SPACES.
02 FILLER PIC X(20) VALUE "NAME".
02 FILLER PIC X VALUE SPACES.
02 FILLER PIC X(7) VALUE "SUBJECT".
02 FILLER PIC X(12) VALUE SPACES.
02 FILLER PIC X(5) VALUE "MARKS".
01 ASTERISK2.
02 FILLER PIC X(55) VALUE ALL SPACES.
02 HASH1 PIC X(15) VALUE ALL "-".
01 ASTERISK1 PIC X(70) VALUE ALL "*".
01 DETAIL.
02 ROLL-NUM PIC Z(5).
02 NAME-STUD PIC B(6)X(21).
02 SUB-NAME PIC X(20).
02 AGRMARKS1 PIC Z9.
01 TOTAL-MARK.
02 FILLER PIC X(55) VALUE SPACES.
02 FILLER PIC X(11) VALUE "TOTAL-MARK:".
02 AGRMARKS2 PIC ZZZ.
PROCEDURE DIVISION.
START-PARA.
OPEN INPUT STUD-FILE OUTPUT STUD-REPORT.
WRITE STUD-OUT-REC FROM MAIN-HEADING
WRITE STUD-OUT-REC FROM ASTERISK1.
READ STUD-FILE AT END GO TO LAST-PARA.
READ1.
MOVE ROLL-NO TO ROLL-NUM.
MOVE ROLL-NO TO R-NUM.
MOVE NAME TO NAME-STUD NOS.
MOVE SUBJECT TO SUB-NAME.
MOVE MARKS TO AGRMARKS1.
MOVE MARKS TO A.
WRITE STUD-OUT-REC FROM DETAIL.
READ2.
READ STUD-FILE AT END GO TO LAST-PARA.
IF (ROLL-NO = R-NUM)
MOVE SUBJECT TO SUB-NAME
MOVE MARKS TO TMARKS AGRMARKS1
ADD TMARKS TO A
MOVE 0 TO ROLL-NUM
MOVE SPACES TO NAME-STUD
WRITE STUD-OUT-REC FROM DETAIL
GO TO READ2.
TOTAL.
MOVE A TO AGRMARKS2.
WRITE STUD-OUT-REC FROM ASTERISK2.
WRITE STUD-OUT-REC FROM TOTAL-MARK.
WRITE STUD-OUT-REC FROM ASTERISK2.
GO TO READ1.
LAST-PARA.
MOVE A TO AGRMARKS2.
WRITE STUD-OUT-REC FROM ASTERISK2.
WRITE STUD-OUT-REC FROM TOTAL-MARK.
WRITE STUD-OUT-REC FROM ASTERISK2.
CLOSE STUD-FILE STUD-REPORT
STOP RUN.
No comments:
Post a Comment