You are on page 1of 68

07MCA26 – COBOL PROGRAMMING LABORATORY

ANIL KUMAR KEDIA

1. (A) WRITE A PROGRAM TO VALUATE THE FOLLOWING EQUATION USING


COMPUTE VERB

Z = (A – B) * C

IDENTIFICATION DIVISION.

PROGRAM-ID. COM.

AUTHOR. ROY.

DATE-WRITTEN.04-03-2010.

DATE-COMPILED.04-03-2010.

ENVIRONMENT DIVISION.

CONFIGURATION SECTION.

OBJECT-COMPUTER. PENTIUM-4.

SOURCE-COMPUTER. PENTIUM-4.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 Z PIC 999V99.

01 A PIC 999V99.

01 B PIC 999V99.

01 C PIC 999V99.

01 Z1 PIC 999.99.

01 A1 PIC 999.99.

01 B1 PIC 999.99.

01 C1 PIC 999.99.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

PROCEDURE DIVISION.

S1.

DISPLAY " ENTER THE VALUES FOR A B AND C ".

ACCEPT A.

ACCEPT B.

ACCEPT C.

MOVE A TO A1.

MOVE B TO B1.

MOVE C TO C1.

DISPLAY " VALUES ARE " A1 B1 C1.

COMPUTE Z = ( A - B ) * C.

MOVE Z TO Z1.

DISPLAY " THE RESULT OF Z = " Z1.

STOP RUN.

OUTPUT :

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

1. (B) WRITE A PROGRAM TO FIND THE SUM OF INDIVIDUAL DIGITS IN THE


GIVEN ‘n’

DIGIT DECIMAL NUMBER.

IDENTIFICATION DIVISION.

PROGRAM-ID. PRO.

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

77 NUM PIC ZZZ9.

77 N PIC 9999.

77 SUM PIC 9(4) VALUE 0.

77 R PIC 9.

77 SUM1 PIC Z(4)9.

PROCEDURE DIVISION.

PARA1.

DISPLAY " ENTER THE NUMBER ".

ACCEPT N.

MOVE N TO NUM.

DISPLAY " ".

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

DISPLAY " THE NUMBER IS : " NUM.

PERFORM PARA2 UNTIL N = 0.

MOVE SUM TO SUM1.

DISPLAY " ".

DISPLAY " THE SUM OF NUM IS " SUM1.

STOP RUN.

PARA2.

DIVIDE N BY 10 GIVING N REMAINDER R.

COMPUTE SUM = SUM + R.

OUTPUT:

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

2. (A) WRITE A PROGRAM FOR GENERATING ODD AND EVEN NUMBERS


BETWEEN THE

GIVEN LIMITS BY USING PERFORM STATEMENT.

IDENTIFICATION DIVISION.

PROGRAM-ID. PRO.

DATA DIVISION.

WORKING-STORAGE SECTION.

77 N PIC 999.

77 NUM PIC 999.

77 P PIC 99.

77 Q PIC 99.

77 R PIC 999.

PROCEDURE DIVISION.

MAIN-PARA.

DISPLAY " ENTER THE RANGE ".

ACCEPT N.

MOVE N TO NUM.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

DISPLAY " EVEN NUMBERS ARE : ".

DISPLAY " ".

PERFORM PARA1 VARYING P FROM 1 BY 1 UNTIL P>N.

DISPLAY " "

DISPLAY " ODD NUMBERS ARE : ".

DISPLAY " ".

PERFORM PARA2 VARYING P FROM 1 BY 1 UNTIL P>N.

STOP RUN.

PARA1.

DIVIDE P BY 2 GIVING Q REMAINDER R.

IF R = 0

MOVE P TO NUM

DISPLAY NUM.

PARA2.

DIVIDE P BY 2 GIVING Q REMAINDER R.

IF R = 1

MOVE P TO NUM

DISPLAY NUM.

OUTPUT:

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

2.(B) WRITE A PROGRAM FOR SORTING NUMERIC NUMBERS.

IDENTIFICATION DIVISION.

PROGRAM-ID. DEMO.

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 TAB.

02 NUM PIC 999 OCCURS 10.

01 I PIC 99.

01 J PIC 99.

01 K PIC 99.
DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON
COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

01 T PIC 999.

PROCEDURE DIVISION.

ACTION-PARA.

DISPLAY " ENTER THE DATA ".

PERFORM ACCEPT-PARA VARYING I FROM 1 BY 1 UNTIL I > 10.

DISPLAY " THE NUMBERS BEFORE SORTING ARE ".

PERFORM DISPLAY-PARA VARYING I FROM 1 BY 1 UNTIL I > 10.

DISPLAY " ".

PERFORM SORT-PARA VARYING I FROM 1 BY 1 UNTIL I > 10.

DISPLAY " THE GIVEN DATA AFTER SORTING ARE ".

PERFORM DISPLAY-PARA VARYING I FROM 1 BY 1 UNTIL I > 10.

STOP RUN.

ACCEPT-PARA.

ACCEPT NUM(I).

DISPLAY-PARA.

DISPLAY NUM(I).

SORT-PARA.

COMPUTE K = I + 1.

PERFORM CAL-PARA VARYING J FROM K BY 1 UNTIL J > 10.

CAL-PARA.

IF NUM(I) > NUM(J)

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

MOVE NUM(I) TO T

MOVE NUM(J) TO NUM(I)

MOVE T TO NUM(J).

OUTPUT:

3. (A) BY USING TABLE HANDLING CONCEPTS, WRITE A PROGRAM FOR


SORTING

AIPHANUMERIC DATA.

IDENTIFICATION DIVISION.

PROGRAM-ID. DEMO.

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 TAB.

02 NUM PIC A(20) OCCURS 10.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

01 I PIC 99.

01 J PIC 99.

01 K PIC 99.

01 T PIC A(20).

PROCEDURE DIVISION.

ACTION-PARA.

DISPLAY " ENTER THE DATA ".

PERFORM ACCEPT-PARA VARYING I FROM 1 BY 1 UNTIL I > 5.

DISPLAY " THE NUMBERS BEFORE SORTING ARE ".

PERFORM DISPLAY-PARA VARYING I FROM 1 BY 1 UNTIL I > 5.

DISPLAY " ".

PERFORM SORT-PARA VARYING I FROM 1 BY 1 UNTIL I > 5.

DISPLAY " THE GIVEN DATA AFTER SORTING ARE ".

PERFORM DISPLAY-PARA VARYING I FROM 1 BY 1 UNTIL I > 5.

STOP RUN.

ACCEPT-PARA.

ACCEPT NUM(I).

DISPLAY-PARA.

DISPLAY NUM(I).

SORT-PARA.

COMPUTE K = I + 1.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

PERFORM CAL-PARA VARYING J FROM K BY 1 UNTIL J > 5.

CAL-PARA.

IF NUM(I) > NUM(J)

MOVE NUM(I) TO T

MOVE NUM(J) TO NUM(I)

MOVE T TO NUM(J).

OUTPUT:

3. (B) BY USING TABLE HANDLING CONCEPTS, WRITE A PROGRAM FOR


SEARCHING

A NUMERIC NUMBER USING SEARCH VERB.

IDENTIFICATION DIVISION.

PROGRAM-ID. FSEARCH.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK


DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON
COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "STUD.DAT".

01 STUDREC.

02 REC OCCURS 5 TIMES INDEXED BY S.

03 STUDNAME PIC X(25).

03 ROLLNO PIC 9(2).

03 SEM PIC 9(2).

WORKING-STORAGE SECTION.

77 N PIC 99.

77 SNAME PIC X(25).

77 I PIC 99.

77 FLAG PIC 99 VALUE IS ZERO.

PROCEDURE DIVISION.

P1.

OPEN OUTPUT FILE1.

PERFORM P2 VARYING I FROM 1 BY 1 UNTIL I > 5.

CLOSE FILE1.

OPEN INPUT FILE1.

DISPLAY " ENTER THE NAME TO BE SEARCHED : ".

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

ACCEPT SNAME.

PERFORM P3.

CLOSE FILE1.

STOP RUN.

P2.

DISPLAY "ENTER THE STUDENT NAME = ".

ACCEPT STUDNAME(I).

DISPLAY "ENTER THE STUDENT ROLL NO. = ".

ACCEPT ROLLNO(I).

DISPLAY "ENTER THE SEMESTER = ".

ACCEPT SEM(I).

WRITE STUDREC.

P3.

SET S TO 1.

SEARCH REC AT END DISPLAY "UNSUCESS"

DISPLAY "*********"

WHEN SNAME = STUDNAME(S)

DISPLAY STUDNAME(S)

DISPLAY ROLLNO(S)

DISPLAY SEM(S)

DISPLAY "*********".

OUTPUT:

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

4. BY USING TABLE HANDLING CONCEPTS, WRITE A PROGRAM FOR MATRIX


ADDITION

AND MATRIX SUBTRACTION.

IDENTIFICATION DIVISION.

PROGRAM-ID. MATADD.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 MAT-A.

02 A1 OCCURS 3 TIMES.

03 A2 OCCURS 3 TIMES.

04 A3 PIC 999.

01 MAT-B.

02 B1 OCCURS 3 TIMES.

03 B2 OCCURS 3 TIMES.

04 B3 PIC 999.

01 MAT-C.

02 C1 OCCURS 3 TIMES.

03 C2 OCCURS 3 TIMES.

04 C3 PIC 999.

01 MAT-D.

02 D1 OCCURS 3 TIMES.

03 D2 OCCURS 3 TIMES.

04 D3 PIC 999.

01 I PIC 99.

01 J PIC 99.

PROCEDURE DIVISION.

P1.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

DISPLAY "ENTER ELEMENTS OF 1ST MATRIX : ".

PERFORM ACC1 VARYING I FROM 1 BY 1 UNTIL I > 3

AFTER J FROM 1 BY 1 UNTIL J > 3.

DISPLAY "ENTER ELEMENTS OF 2ND MATRIX : ".

PERFORM ACC2 VARYING I FROM 1 BY 1 UNTIL I > 3

AFTER J FROM 1 BY 1 UNTIL J > 3.

MOVE 1 TO J.

DISPLAY "ELEMENTS OF 1ST MATRIX :".

PERFORM DIS1 VARYING I FROM 1 BY 1 UNTIL I > 3.

DISPLAY " ".

DISPLAY "ELEMENTS OF 2ND MATRIX :".

PERFORM DIS2 VARYING I FROM 1 BY 1 UNTIL I > 3.

DISPLAY " ".

PERFORM CAL1 VARYING I FROM 1 BY 1 UNTIL I > 3

AFTER J FROM 1 BY 1 UNTIL J > 3.

PERFORM CAL2 VARYING I FROM 1 BY 1 UNTIL I > 3

AFTER J FROM 1 BY 1 UNTIL J > 3.

DISPLAY "MATRIX ADDITION : ".

MOVE 1 TO J.

PERFORM DIS3 VARYING I FROM 1 BY 1 UNTIL I > 3.

DISPLAY " ".

DISPLAY "MATRIX SUBTRACTION : ".

MOVE 1 TO J.

PERFORM DIS4 VARYING I FROM 1 BY 1 UNTIL I > 3.

DISPLAY " ".

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

DISPLAY " ".

STOP RUN.

ACC1.

ACCEPT A3(I , J).

DIS1.

DISPLAY A3( I , J ) , " " , A3( I , J + 1 ) , " " , A3( I , J + 2 ).

ACC2.

ACCEPT B3(I , J).

DIS2.

DISPLAY B3( I , J ) , " " , B3( I , J + 1 ) , " " , B3( I , J + 2 ).

CAL1.

COMPUTE C3( I , J ) = A3( I , J ) + B3( I , J ).

DIS3.

DISPLAY C3( I , J ) , " " , C3( I , J + 1 ) , " " , C3( I , J + 2 ).

CAL2.

COMPUTE D3( I , J ) = A3( I , J ) - B3( I , J ).

DIS4.

DISPLAY D3( I , J ) , " " , D3( I , J + 1 ) , " " , D3( I , J + 2 ).

OUTPUT :

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

5. BY USING TABLE HANDLING CONCEPTS, WRITE A PROGRAM FOR MATRIX

MULTIPLICATION.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

IDENTIFICATION DIVISION.

PROGRAM-ID. MATADD.

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 MAT-A.

02 A1 OCCURS 3 TIMES.

03 A2 OCCURS 3 TIMES.

04 A3 PIC 999.

01 MAT-B.

02 B1 OCCURS 3 TIMES.

03 B2 OCCURS 3 TIMES.

04 B3 PIC 999.

01 MAT-C.

02 C1 OCCURS 3 TIMES.

03 C2 OCCURS 3 TIMES.

04 C3 PIC 999.

01 I PIC 99.

01 J PIC 99.

01 K PIC 99.

PROCEDURE DIVISION.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

P1.

DISPLAY "ENTER THE ELEMENTS OF 1ST MATRIX :".

PERFORM ACC1 VARYING I FROM 1 BY 1 UNTIL I > 3

AFTER J FROM 1 BY 1 UNTIL J > 3.

DISPLAY "ENTER THE ELEMENTS OF 2ND MATRIX :".

PERFORM ACC2 VARYING I FROM 1 BY 1 UNTIL I > 3

AFTER J FROM 1 BY 1 UNTIL J > 3.

MOVE 1 TO J.

DISPLAY " 1ST MATRIX :".

DISPLAY " ".

PERFORM DIS1 VARYING I FROM 1 BY 1 UNTIL I > 3.

DISPLAY " ".

DISPLAY "2ND MATRIX :".

DISPLAY " ".

PERFORM DIS2 VARYING I FROM 1 BY 1 UNTIL I > 3.

DISPLAY " ".

PERFORM CAL1 VARYING I FROM 1 BY 1 UNTIL I > 3

AFTER J FROM 1 BY 1 UNTIL J > 3.

DISPLAY "MUTIPLIED MATRIX : ".

DISPLAY " ".

MOVE 1 TO J.

PERFORM DIS3 VARYING I FROM 1 BY 1 UNTIL I > 3.

DISPLAY " ".

DISPLAY " ".

STOP RUN.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

ACC1.

ACCEPT A3(I , J).

DIS1.

DISPLAY A3( I , J ) , " " , A3( I , J + 1 ) , " " , A3( I , J + 2 ).

ACC2.

ACCEPT B3(I , J).

DIS2.

DISPLAY B3( I , J ) , " " , B3( I , J + 1 ) , " " , B3( I , J + 2).

CAL1.

COMPUTE C3(I , J) = 0.

PERFORM CAL2 VARYING K FROM 1 BY 1 UNTIL K > 3.

CAL2.

COMPUTE C3(I , J) = C3(I , J) + A3(I , K) * B3(K , J).

DIS3.

DISPLAY C3( I , J ) , " " , C3( I , J + 1 ) , " " , C3( I , J + 2).

OUTPUT:

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

6. (A) WRITE A PROGRAM TO SORT RECORDS IN THE FILE USING SORT VERB.

IDENTIFICATION DIVISION.

PROGRAM-ID. PRA.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT EMP-FILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

SELECT SORT-FILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

SELECT OUT-FILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

FILE SECTION.

FD EMP-FILE

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "EMP1.DAT".

01 EMP-REC.

02 ID-NO PIC 9(3).

02 NAME PIC X(10).

02 DEPT PIC X(10).

02 SALARY PIC 9(7).

SD SORT-FILE

DATA RECORDS ARE SORTREC.

01 SORTREC.

02 ID-NO PIC 9(3).

02 NAME PIC X(10).

02 DEPT PIC X(10).

02 SALARY PIC 9(7).

FD OUT-FILE

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "RESULT.DAT".

01 OUTREC PIC X(80).

PROCEDURE DIVISION.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

P1.

SORT SORT-FILE ON ASCENDING KEY NAME OF SORTREC

USING EMP-FILE GIVING OUT-FILE.

STOP RUN.

OUTPUT:

INPUT OUTPUT

6. (B) WRITE A PROGRAM TO MERGE FILES USING MERGE VERB.

IDENTIFICATION DIVISION.

PROGRAM-ID. PRA.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

SELECT FILE2 ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

SELECT WORKFILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

SELECT MERGEFILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "FILE1.DAT".

01 FILE1-REC.

02 ZONE PIC X(10).

02 NAME PIC X(10).

02 AMOUNT PIC 9(4).

FD FILE2

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "FILE2.DAT"

DATA RECORDS IS FILE2-REC.

01 FILE2-REC.

02 ZONE PIC X(10).

02 NAME PIC X(10).

02 AMOUNT PIC 9999.

SD WORKFILE

DATA RECORDS IS WORK-REC.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

01 WORK-REC.

02 ZONE PIC X(10).

02 NAME PIC X(10).

02 AMOUNT PIC 9999.

FD MERGEFILE

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "MERGE.DAT"

DATA RECORDS IS MERGE-REC.

01 MERGE-REC PIC X(60).

PROCEDURE DIVISION.

P1.

MERGE WORKFILE ON ASCENDING KEY AMOUNT OF

WORK-REC ON DESCENDING KEY NAME OF WORK-REC

USING FILE1 FILE2 GIVING MERGEFILE.

STOP RUN.

OUTPUT:

INPUT : FILE1.DAT FILE2.DAT

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

OUTPUT: MERGE.DAT

7. WRITE A PROGRAM TO READ EMPLOYEE FILE AS SEQUENTIAL FILE AND


CALCULATE

GROSS PAY AND NET PAY FRO EMPLOYEES IN THE ORGANIZATION.

IDENTIFICATION DIVISION.

PROGRAM-ID. PAYROLL.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

FILE-CONTROL.

SELECT EMP-FILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

SELECT PRT-FILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

FILE SECTION.

FD EMP-FILE

LABEL RECORD ARE STANDARD

VALUE OF FILE-ID IS "PAY1.DAT".

01 EMP-REC.

02 EMPN PIC X(8).

02 EMPNA PIC X(10).

02 BP PIC 9(5)V99.

FD PRT-FILE

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "PAY2.DAT".

01 PRT-REC PIC X(80).

WORKING-STORAGE SECTION.

01 HRA PIC 9(5)V99 VALUE 0.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

01 DA PIC 9(5)V99 VALUE 0.

01 NS PIC 9(5)V99 VALUE 0.

01 SL PIC 99 VALUE 0.

01 HD1.

02 FILLER PIC X(30) VALUE SPACES.

02 FILLER PIC X(30) VALUE " PAY-SLIP FOR THE MAY-2009 ".

02 FILLER PIC X(30) VALUE SPACES.

01 HD2.

02 FILLER PIC X(72) VALUE ALL "=".

01 HD3.

02 FILLER PIC X(5) VALUE "SL-NO".

02 FILLER PIC X(2) VALUE SPACES.

02 FILLER PIC X(7) VALUE "EMP-NO".

02 FILLER PIC X(2) VALUE SPACES.

02 FILLER PIC X(8) VALUE "EMP-NAME".

02 FILLER PIC X(8) VALUE SPACES.

02 FILLER PIC X(10) VALUE "BASIC-PAY".

02 FILLER PIC X(4) VALUE SPACES.

02 FILLER PIC X(5) VALUE "HRA".

02 FILLER PIC X(8) VALUE SPACES.

02 FILLER PIC X(5) VALUE "DA".

02 FILLER PIC X(2) VALUE SPACES.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

02 FILLER PIC X(10) VALUE "NET-SALARY".

01 DET1.

02 P-SL PIC Z9.

02 FILLER PIC X(5) VALUE SPACES.

02 P-NO PIC X(5).

02 FILLER PIC X(4) VALUE SPACES.

02 P-NAME PIC X(10).

02 FILLER PIC X(5) VALUE SPACES.

02 P-BP PIC ZZ,ZZZ.99.

02 FILLER PIC X(2) VALUE SPACES.

02 P-HRA PIC ZZ,ZZZ.99.

02 FILLER PIC X(2) VALUE SPACES.

02 P-DA PIC ZZ,ZZ9.99.

02 FILLER PIC X(1) VALUE SPACES.

02 P-NS PIC Z,ZZ,ZZ9(3).99.

PROCEDURE DIVISION.

START-PARA.

OPEN INPUT EMP-FILE OUTPUT PRT-FILE.

WRITE PRT-REC FROM HD2.

WRITE PRT-REC FROM HD1.

WRITE PRT-REC FROM HD2.

WRITE PRT-REC FROM HD3.

WRITE PRT-REC FROM HD2.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

READ-PARA.

READ EMP-FILE AT END GO TO L-PARA.

COMPUTE HRA = (BP * 0.15).

COMPUTE DA = (BP * 0.90).

COMPUTE NS = (BP + HRA + DA).

ADD 1 TO SL.

MOVE SL TO P-NO.

MOVE EMPN TO P-NO.

MOVE EMPNA TO P-NAME.

MOVE BP TO P-BP.

MOVE HRA TO P-HRA.

MOVE DA TO P-DA.

MOVE NS TO P-NS.

WRITE PRT-REC FROM DET1.

GO TO READ-PARA.

L-PARA.

WRITE PRT-REC FROM HD2.

CLOSE EMP-FILE PRT-FILE.

STOP RUN.

OUTPUT :

INPUT :

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

OUPUT :

8.WRITE A PROGRAM TO STORE STUDENT DETAILS WITH RESULTS IN A FILE

WITH SEQUENTIAL FILE HANDLING TECHNIQUES.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

IDENTIFICATION DIVISION.

PROGRAM-ID. PRA.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT STUDENT-FILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

SELECT PRINT-FILE ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

FILE SECTION.

FD STUDENT-FILE

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "STD.IN".

01 STUD-REC.

02 REGNO PIC 9(4).

02 NAME PIC X(10).

02 SUB1 PIC 999.

02 SUB2 PIC 999.

02 SUB3 PIC 999.

FD PRINT-FILE

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "STD.OUT".

01 PRINT-RECORD PIC X(70).

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

WORKING-STORAGE SECTION.

01 TOTAL PIC 999.

01 AVG PIC 99V99.

01 RESULT PIC X(20).

01 HD-1.

02 FILLER PIC X(27) VALUE SPACES.

02 FILLER PIC X(14) VALUE "STUDENT RECORD".

01 HD-2.

02 FILLER PIC X(70) VALUE ALL "-".

01 HD-3.

02 FILLER PIC X(2) VALUE SPACES.

02 FILLER PIC X(6) VALUE "REG-NO".

02 FILLER PIC X(2) VALUE SPACES.

02 FILLER PIC X(4) VALUE "NAME".

02 FILLER PIC X(8) VALUE SPACES.

02 FILLER PIC X(4) VALUE "SUB1".

02 FILLER PIC X(5) VALUE SPACES.

02 FILLER PIC X(4) VALUE "SUB2".

02 FILLER PIC X(5) VALUE SPACES.

02 FILLER PIC X(4) VALUE "SUB3".

02 FILLER PIC X(6) VALUE SPACES.

02 FILLER PIC X(7) VALUE "TOTAL".

02 FILLER PIC X(4) VALUE SPACES.

02 FILLER PIC X(6) VALUE "RESULT".

01 DET1.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

02 FILLER PIC X(1) VALUE SPACES.

02 P-REGNO PIC Z(4).

02 FILLER PIC X(3) VALUE SPACES.

02 P-NAME PIC X(10).

02 FILLER PIC X(4) VALUE SPACES.

02 P-SUB1 PIC X(4).

02 FILLER PIC X(5) VALUE SPACES.

02 P-SUB2 PIC X(4).

02 FILLER PIC X(5) VALUE SPACES.

02 P-SUB3 PIC Z(4).

02 FILLER PIC X(4) VALUE SPACES.

02 P-TOTAL PIC Z(4).

02 FILLER PIC X(4) VALUE SPACES.

02 P-RESULT PIC X(20).

PROCEDURE DIVISION.

START-PARA.

OPEN INPUT STUDENT-FILE OUTPUT PRINT-FILE.

WRITE PRINT-RECORD FROM HD-1.

WRITE PRINT-RECORD FROM HD-2.

WRITE PRINT-RECORD FROM HD-3.

WRITE PRINT-RECORD FROM HD-2.

READ-PARA.

READ STUDENT-FILE AT END GO LPARA.

COMPUTE TOTAL = SUB1 + SUB2 + SUB3.

COMPUTE AVG = TOTAL / 3.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

IF SUB1 < 35 OR SUB2 < 35 OR SUB3 < 35

MOVE "FAIL" TO RESULT

ELSE

IF AVG > 70 OR = 70 AND < 85

MOVE "DISTINCTION" TO RESULT

ELSE

IF AVG > 60 OR = 60 AND < 70

MOVE "FIRST CLASS" TO RESULT

ELSE

IF AVG > 50 OR = 50 AND < 60

MOVE "SECOND CLASS" TO RESULT

ELSE

MOVE "PASS CLASS" TO RESULT.

PERFORM PARA-MOVE.

WRITE PRINT-RECORD FROM DET1.

GO TO READ-PARA.

PARA-MOVE.

MOVE REGNO TO P-REGNO.

MOVE NAME TO P-NAME.

MOVE SUB1 TO P-SUB1.

MOVE SUB2 TO P-SUB2.

MOVE SUB3 TO P-SUB3.

MOVE TOTAL TO P-TOTAL.

MOVE RESULT TO P-RESULT.

LPARA.

CLOSE STUDENT-FILE PRINT-FILE.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

STOP RUN.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

9. WRITE A PROGRAM TO UPDATE A MASTER SEQUENTIAL FILE USING A


SEQUENTIAL TRANSACTION FILE.

MASTER FILE

IDENTIFICATION DIVISION.

PROGRAM-ID. MASTER.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "INUM.DAT".

01 REC.

02 PNO PIC 9(6).

02 A PIC X(3).

02 NAME PIC X(20).

02 B PIC X(3).

02 QT PIC 9(3).

02 C PIC X(3).

02 PR PIC 999.99.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

WORKING-STORAGE SECTION.

77 N PIC 99.

PROCEDURE DIVISION.

MAIN-PARA.

OPEN OUTPUT FILE1.

DISPLAY "ENTER THE RANGE".

ACCEPT N.

PERFORM P1 N TIMES.

CLOSE FILE1.

STOP RUN.

P1.

DISPLAY "ENTER PART NUMBER".

ACCEPT PNO.

DISPLAY "ENTER NAME".

ACCEPT NAME.

DISPLAY "ENTER QUANTITY IN HAND".

ACCEPT QT.

DISPLAY "ENTER PRICE".

ACCEPT PR.

MOVE SPACES TO A B C.

WRITE REC.

TRANSACTION FILE

IDENTIFICATION DIVISION.

PROGRAM-ID. PRA.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

SELECT FILE2 ASSIGN TO DISK

ORGANIZATION IS LINE SEQUENTIAL.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "INUM1.DAT".

01 REC.

02 PNO PIC 9(6).

02 A PIC XXX.

02 NAME PIC X(20).

02 B PIC XXX.

02 QT PIC 9(3).

02 C PIC XXX.

02 PR PIC 999.99.

FD FILE2

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "INUMT1.DAT".

01 REC2.

02 PTNO PIC 9(6).

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

02 QTY PIC 9(3).

02 ACT PIC X.

WORKING-STORAGE SECTION.

77 N PIC 99.

PROCEDURE DIVISION.

MAIN-PARA.

OPEN OUTPUT FILE2.

DISPLAY "ENTER THE RANGE".

ACCEPT N.

PERFORM P1 N TIMES.

CLOSE FILE2.

GO TO P2.

P1.

DISPLAY "PART NUMBER".

ACCEPT PTNO.

DISPLAY "QUANTITY IN HAND".

ACCEPT QTY.

DISPLAY "ADD OR SUB".

ACCEPT ACT.

WRITE REC2.

P2.

OPEN I-O FILE1.

P3.

READ FILE1 AT END GO TO EPARA.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

P4.

OPEN INPUT FILE2.

P5.

READ FILE2 AT END GO TO END-PARA.

IF PNO = PTNO

PERFORM P6

GO TO P5

ELSE

GO TO P5.

P6.

IF ACT = 'A' OR 'a'

COMPUTE QT = QT + QTY.

IF ACT = 'S' OR 's'

COMPUTE QT = QT - QTY.

REWRITE REC.

END-PARA.

CLOSE FILE2.

GO TO P3.

EPARA.

CLOSE FILE1.

STOP RUN.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

OUTPUT

MASTER (INPUT) TRANSACTION

OUTPUT ( INUM1.DAT)

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

10. USING THE INDEX FILE ORGANIZATION, WRITE A PROGRAM TO STORE


EMPLOYEE DETAILS.

IDENTIFICATION DIVISION.

PROGRAM-ID. DEMO.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK

ORGANIZATION IS INDEXED

ACCESS MODE IS SEQUENTIAL

RECORD KEY IS EMPNO.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "INX.DAT".

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

01 REC1.

02 EMPNO PIC 9(4).

02 A PIC X(3).

02 EMPNAME PIC X(15).

02 B PIC X(3).

02 DEPT PIC X(15).

02 C PIC X(3).

02 BASIC-PAY PIC 9(5)V9(2).

02 DA PIC 9(5)V9(2).

02 SALARY PIC 9(7)V9(2).

WORKING-STORAGE SECTION.

77 CH PIC 9.

77 CHO PIC X.

77 DA1 PIC 9(5)V9(2).

77 SAL1 PIC 9(7)V9(2).

PROCEDURE DIVISION.

MAIN-PARA.

DISPLAY (1 , 1) ERASE.

P1.

DISPLAY "1.CREATE".

DISPLAY "2.VIEW".

DISPLAY "3.EXIT".

DISPLAY "ENTER YOUR CHOICE".

ACCEPT CH.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

IF CH = 1

OPEN OUTPUT FILE1

GO TO P2

ELSE

IF CH = 2

OPEN INPUT FILE1

GO TO P3

ELSE

IF CH = 3

GO TO X-PARA

ELSE

DISPLAY "INVALID"

GO TO P1.

P2.

DISPLAY "ENTER THE EMPLOYEE NUMBER".

ACCEPT EMPNO.

DISPLAY "ENTER THE EMPLOYEE NAME".

ACCEPT EMPNAME.

DISPLAY "ENTER THE DEPARTMENT".

ACCEPT DEPT.

DISPLAY "ENTER THE BASIC PAY".

ACCEPT BASIC-PAY.

COMPUTE DA1 = ( BASIC-PAY * .80 ).

MOVE DA1 TO DA.

COMPUTE SAL1 = BASIC-PAY + DA1.

MOVE SAL1 TO SALARY.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

MOVE SPACES TO A B C.

WRITE REC1 INVALID KEY DISPLAY "INVALID DATA".

DISPLAY "CONTINUE (Y/N)".

ACCEPT CHO.

IF CHO = "Y" OR = "y"

GO TO P2

ELSE

CLOSE FILE1.

GO TO P1.

P3.

READ FILE1 NEXT RECORD AT END CLOSE FILE1 GO TO P1.

DISPLAY EMPNO " " EMPNAME " " DEPT " " BASIC-PAY

" " DA " " SALARY " ".

GO TO P3.

X-PARA.

STOP RUN.

OUTPUT

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

11. USING THE INDEX FILE ORGANIZATION, WRITE A PROGRAM TO UPDATE

THE EMPLOYEE SALARY (INCREASE DA OF 3 %)

IDENTIFICATION DIVISION.

PROGRAM-ID. DEMO.

ENVIRONMENT DIVISION.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK

ORGANIZATION IS INDEXED

ACCESS MODE IS SEQUENTIAL

RECORD KEY IS EMPNO.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "INX.DAT".

01 REC1.

02 EMPNO PIC 9(4).

02 A PIC X(3).

02 EMPNAME PIC X(15).

02 B PIC X(3).

02 DEPT PIC X(15).

02 C PIC X(3).

02 BASIC-PAY PIC 9(5)V9(2).

02 DA PIC 9(5)V9(2).

02 SALARY PIC 9(7)V9(2).

WORKING-STORAGE SECTION.

77 CH PIC 9.

77 CHO PIC X.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

77 DA1 PIC 9(5)V9(2).

77 SAL1 PIC 9(7)V9(2).

PROCEDURE DIVISION.

MAIN-PARA.

DISPLAY (1 , 1) ERASE.

P1.

DISPLAY "1.CREATE".

DISPLAY "2.VIEW".

DISPLAY "3.UPDATE".

DISPLAY "4.EXIT".

DISPLAY "ENTER YOUR CHOICE".

ACCEPT CH.

IF CH = 1

OPEN OUTPUT FILE1

GO TO P2

ELSE

IF CH = 2

OPEN INPUT FILE1

GO TO P3

ELSE

IF CH = 3

OPEN I-O FILE1

GO TO P4

ELSE

IF CH = 4

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

GO TO X-PARA

ELSE

DISPLAY "INVALID"

GO TO P1.

P2.

DISPLAY "ENTER THE EMPLOYEE NUMBER".

ACCEPT EMPNO.

DISPLAY "ENTER THE EMPLOYEE NAME".

ACCEPT EMPNAME.

DISPLAY "ENTER THE DEPARTMENT".

ACCEPT DEPT.

DISPLAY "ENTER THE BASIC PAY".

ACCEPT BASIC-PAY.

COMPUTE DA1 = ( BASIC-PAY * .80 ).

MOVE DA1 TO DA.

COMPUTE SAL1 = BASIC-PAY + DA1.

MOVE SAL1 TO SALARY.

MOVE SPACES TO A B C.

WRITE REC1 INVALID KEY DISPLAY "INVALID DATA".

DISPLAY "CONTINUE (Y/N)".

ACCEPT CHO.

IF CHO = "Y" OR = "y"

GO TO P2

ELSE

CLOSE FILE1.

GO TO P1.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

P3.

READ FILE1 NEXT RECORD AT END CLOSE FILE1 GO TO P1.

DISPLAY EMPNO " " EMPNAME " " DEPT " " BASIC-PAY

" " DA " " SALARY " ".

GO TO P3.

P4.

READ FILE1 RECORD AT END CLOSE FILE1 GO TO P1.

COMPUTE DA1 = ( BASIC-PAY * ( .80 + 0.03 ) ).

MOVE DA1 TO DA.

COMPUTE SAL1 = BASIC-PAY + DA1.

MOVE SAL1 TO SALARY.

REWRITE REC1 INVALID KEY DISPLAY "NOT FOUND".

GO TO P4.

X-PARA.

STOP RUN.

OUTPUT

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

12. WRITE A PROGRAM FOR THE FOLLOWING

(A) TO DELETE A RECORD IN THE INDEX FILE


DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON
COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

(B) TO SEARCH A RECORD IN THE INDEX FILE

IDENTIFICATION DIVISION.

PROGRAM-ID. DEMO.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK

ORGANIZATION IS INDEXED

ACCESS MODE IS SEQUENTIAL

RECORD KEY IS EMPNO.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "INXT.DAT".

01 REC1.

02 EMPNO PIC 9(4).

02 A PIC X(3).

02 EMPNAME PIC X(15).

02 B PIC X(3).

02 DEPT PIC X(15).

02 C PIC X(3).

02 BASIC-PAY PIC 9(5)V9(2).

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

02 DA PIC 9(5)V9(2).

02 SALARY PIC 9(7)V9(2).

WORKING-STORAGE SECTION.

77 CH PIC 9.

77 CHO PIC X.

77 DA1 PIC 9(5)V9(2).

77 SAL1 PIC 9(7)V9(2).

77 N1 PIC 9(4).

77 S1 PIC 9(4).

PROCEDURE DIVISION.

MAIN-PARA.

DISPLAY (1 , 1) ERASE.

P1.

DISPLAY "1.CREATE".

DISPLAY "2.VIEW".

DISPLAY "3.DELETE".

DISPLAY "4.SEARCH".

DISPLAY "5.EXIT".

DISPLAY "ENTER YOUR CHOICE".

ACCEPT CH.

IF CH = 1

OPEN OUTPUT FILE1

GO TO P2

ELSE

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

IF CH = 2

OPEN INPUT FILE1

GO TO P3

ELSE

IF CH = 3

OPEN I-O FILE1

GO TO P4

ELSE

IF CH = 4

OPEN INPUT FILE1

GO TO P6

ELSE

IF CH = 5

GO TO X-PARA

ELSE

DISPLAY "INVALID"

GO TO P1.

P2.

DISPLAY "ENTER THE EMPLOYEE NUMBER".

ACCEPT EMPNO.

DISPLAY "ENTER THE EMPLOYEE NAME".

ACCEPT EMPNAME.

DISPLAY "ENTER THE DEPARTMENT".

ACCEPT DEPT.

DISPLAY "ENTER THE BASIC PAY".

ACCEPT BASIC-PAY.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

COMPUTE DA1 = ( BASIC-PAY * .80 ).

MOVE DA1 TO DA.

COMPUTE SAL1 = BASIC-PAY + DA1.

MOVE SAL1 TO SALARY.

MOVE SPACES TO A B C.

WRITE REC1 INVALID KEY DISPLAY "INVALID DATA".

DISPLAY "CONTINUE (Y/N)".

ACCEPT CHO.

IF CHO = "Y" OR = "y"

GO TO P2

ELSE

CLOSE FILE1.

GO TO P1.

P3.

READ FILE1 NEXT RECORD AT END CLOSE FILE1 GO TO P1.

DISPLAY EMPNO " " EMPNAME " " DEPT " " BASIC-PAY " "

DA " " SALARY

GO TO P3.

P4.

DISPLAY "ENTER THE EMPLOYEE NUMBER FOR DELETION".

ACCEPT N1.

P5.

READ FILE1 RECORD AT END CLOSE FILE1 GO TO P1.

IF N1 = EMPNO

DISPLAY "RECORD DELETED"

DELETE FILE1 RECORD INVALID GO TO P4.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

GO TO P5.

P6.

DISPLAY "ENTER THE EMPNO FOR SEARCH".

ACCEPT S1.

P7.

READ FILE1 RECORD AT END CLOSE FILE1 GO TO P1.

IF S1 = EMPNO

DISPLAY "RECORD SEARCHED"

DISPLAY EMPNO " " EMPNAME " " DEPT " " BASIC-PAY " "

DA " " SALARY .

X-PARA.

STOP RUN.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

OUTPUT

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

13. WRITE A PROGRAM TO CALCULATE NET PAY AND GROSS PAY BY

READING RELATIVE CONTAINING FIELDS EMP_NO, EMP_NAME ,

BASIC_PAY. STORE THE OUTPUT IN RELATIVE FILE.

ENVIRONMENT DIVISION.

INPUT-OUTPUT SECTION.

FILE-CONTROL.

SELECT FILE1 ASSIGN TO DISK

ORGANIZATION IS RELATIVE

ACCESS MODE IS RANDOM

RELATIVE KEY IS ENO.

DATA DIVISION.

FILE SECTION.

FD FILE1

LABEL RECORDS ARE STANDARD

VALUE OF FILE-ID IS "REL1.DAT".

01 REC1.

02 EMPNO PIC 9(4).


DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON
COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

02 EMPNAME PIC X(15).

02 DEPT PIC X(15).

02 BP PIC 9(5)V9(2).

02 DA PIC 9(5).9(2).

02 HRA PIC 9(5).9(2).

02 GROSS PIC 9(5).9(2).

02 NET PIC 9(5).9(2).

WORKING-STORAGE SECTION.

01 CH PIC 9.

01 CHO PIC X(2).

01 BN PIC 9(4).

01 HRA1 PIC 9(5)V9(2).

01 DA1 PIC 9(5)V9(2).

01 GROSS1 PIC 9(5)V9(2).

01 NET1 PIC 9(5)V9(2).

01 SAV1 PIC 9(5)V9(2).

01 DED1 PIC 9(5)V9(2).

01 ENO PIC 9(5).

PROCEDURE DIVISION.

MAIN-PARA.

DISPLAY ( 1 , 1 ) ERASE.

P1.

DISPLAY "1. CREATE ".

DISPLAY "2. VIEW ".


DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON
COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

DISPLAY "3. EXIT ".

DISPLAY "ENTER YOUR CHOICE".

ACCEPT CH.

IF CH =1

OPEN OUTPUT FILE1

GO TO P2

ELSE

IF CH = 2

OPEN INPUT FILE1

GO TO P3

ELSE

IF CH = 3

GO TO X-PARA

ELSE

DISPLAY " INVALID CHOICE "

GO TO P1.

P2.

DISPLAY " ENTER THE EMPLOYEE NUMBER ".

ACCEPT EMPNO.

DISPLAY " ENTER THE EMPLOYEE NAME ".

ACCEPT EMPNAME.

DISPLAY " ENTER THE DEPARTMENT ".

ACCEPT DEPT.

DISPLAY " ENTER THE BASIC-PAY " .

ACCEPT BP.
DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON
COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

COMPUTE HRA1 = BP * 0.20.

MOVE HRA1 TO HRA.

COMPUTE DA1 = ( BP * 0.80 ).

MOVE DA1 TO DA.

COMPUTE GROSS1 = BP + DA1 + HRA1.

MOVE GROSS1 TO GROSS.

COMPUTE SAV1 = BP * 0.5.

COMPUTE DED1 = BP * 0.3.

COMPUTE NET1 = GROSS1 - SAV1 - DED1.

MOVE NET1 TO NET.

DISPLAY ENO.

ACCEPT ENO.

WRITE REC1 INVALID KEY DISPLAY "INVALID DATA".

DISPLAY " CONTINUE (Y/N) ".

ACCEPT CHO.

IF CHO = "Y" OR = "y"

GO TO P2

ELSE

CLOSE FILE1

GO TO P1.

P3.

ACCEPT ENO.

READ FILE1 RECORD INVALID KEY

DISPLAY "INVALID POSITION"

CLOSE FILE1 GO TO P1.


DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON
COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

DISPLAY EMPNO " " EMPNAME " " DEPT " "

BP " " DA " " GROSS " " NET.

CLOSE FILE1.

GO TO P1.

X-PARA.

STOP RUN.

OUTPUT

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

14. WRITE A PROGRAM TO FIND SIMPLE INTEREST AND COMPOUND

INTEREST USING SUBROUTINE CONCEPT.

* MAIN PROGRAM.

IDENTIFICATION DIVISION.

PROGRAM-ID. INTEREST.

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

77 P PIC 9(5).

77 T PIC 9(2).

77 R PIC 9(2).

77 SI PIC 9(4).9(2).

77 CI PIC 9(4).9(2).

PROCEDURE DIVISION.

P1.

DISPLAY "ENTER P,T,R ".

ACCEPT P.

ACCEPT T.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

ACCEPT R.

DISPLAY "PRINCIPLE = " P " TIME = " T " RATE = " R.

CALL "SI.COB" USING P, T, R, SI .

DISPLAY "SIMPLE INTEREST IS " SI.

CALL "CI.COB" USING P, T, R, CI.

DISPLAY "COMPOUND INTEREST IS " CI.

STOP RUN.

*SIMPLE INTEREST.

IDENTIFICATION DIVISION.

PROGRAM-ID. SI.

ENVIRONMENT DIVISION.

DATA DIVISION.

LINKAGE SECTION.

01 P1 PIC 9(5).

01 T1 PIC 9(2).

01 R1 PIC 9(2).

01 SI1 PIC 9(4).9(2).

PROCEDURE DIVISION USING P1 , T1 , R1, SI1.

PARA1.

COMPUTE SI1 = ( P1 * T1 * R1) / 100.

EXIT PROGRAM.

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

*COMPOUND INTEREST.

IDENTIFICATION DIVISION.

PROGRAM-ID. CI.

ENVIRONMENT DIVISION.

DATA DIVISION.

WORKING-STORAGE SECTION.

01 A PIC 9(4)V9(2).

LINKAGE SECTION.

01 P1 PIC 9(5).

01 T1 PIC 9(2).

01 R1 PIC 9(3).

01 CI1 PIC 9(4).9(2).

PROCEDURE DIVISION USING P1 , T1 , R1 , CI1.

PARA1.

COMPUTE A = P1 * ( 1 + R1 / 100 ) ** T1.

COMPUTE CI1 = A - P1.

EXIT PROGRAM.

OUTPUT

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING
07MCA26 – COBOL PROGRAMMING LABORATORY
ANIL KUMAR KEDIA

DEPARTMENT OF COMPUTER APPLICATIONS NEW HORIZON


COLLEGE OF ENGINEERING

You might also like