Вы находитесь на странице: 1из 73

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA

DEPARTMENT OF MCA
EXPEREMENT NO:1

DATE:23/2/2013

1) SIMPLE PROGRAM USING ACCEPT, DISPLAY AND SOME


ARITHMATIC VERBS.

i)Aim:-TO PERFORM A PROGRAM THAT ILLUSTRATES EDITING


CHARACTERS.
IDENTIFICATION DIVISION.
PROGRAM-ID. EDITING-CHARACTERS.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 VAL1 PIC ZZZV99.
77 VAL2 PIC ***999.
77 VAL3 PIC $ZZ999.
77 VAL4 PIC -Z(3)V99.
77 VAL5 PIC +ZZZV99.
77 VAL6 PIC 9999CR.
77 VAL7 PIC 9999DB.
77 VAL8 PIC 9999.99.
77 VAL9 PIC 9,99,999.
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY (5 5) "ZZZV99 ".
MOVE 38.2 TO VAL1
DISPLAY(5 15)VAL1.
MOVE 0 TO VAL1 DISPLAY(5 25) VAL1.
DISPLAY(7 5) "***999".
MOVE 52 TO VAL2 DISPLAY(7 15) VAL2.
MOVE 1.68 TO VAL2 DISPLAY(7 25) VAL2.
DISPLAY(9 5) "$99999".
MOVE 985 TO VAL3 DISPLAY(9 15) VAL3.
MOVE 1 TO VAL3 DISPLAY(9 25) VAL3.
DISPLAY(11 5) "-ZZZV99".
MOVE -46.52 TO VAL4 DISPLAY(11 15) VAL4.
MOVE 46.52 TO VAL4 DISPLAY(11 25) VAL4.
DISPLAY(13 5) "+ZZZV99".
MOVE -382 TO VAL5 DISPLAY(13 15) VAL5.
MOVE 382 TO VAL5 DISPLAY(13 25) VAL5.
DISPLAY (15 5)"9999CR".
MOVE -4562 TO VAL6 DISPLAY(15 15) VAL6.
MOVE 4562 TO VAL6 DISPLAY(15 25) VAL6.
DISPLAY(17 5) "9999DB".
MOVE -4562 TO VAL7 DISPLAY(17 15) VAL7.
MOVE 4562 TO VAL7 DISPLAY(17 25) VAL7.
DISPLAY(19 5) "9999.99".
MOVE 324.52 TO VAL8 DISPLAY(19 15) VAL8.

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
MOVE 0.25 TO VAL8 DISPLAY(19 25) VAL8.
DISPLAY(21 5) "9,99,999".
MOVE 32342 TO VAL9 DISPLAY(21 15) VAL9.
MOVE 33 TO VAL9 DISPLAY(21 25) VAL9.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
PIC

ENTERED VALUE
RESULT VALUE
ZZZV99

38.2
38 20

XXX 999

1.68
XXX 1

$ZZ 999

985
$ 985

-ZZZV99

-46.52
- 4652

+ZZZV99

-382
-382

999 CR

-4562
A562CR

999 DB

-4562
B4562.DB

9999.99

324.85
0324.85

9,99,999

32342
0,32,342

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:1

DATE: 23/2/2013

ii) Aim:-TO PERFORAM A PROGRAM TO COVERT TEMPERATURE FROM F


TO C.
*COBOL PROGRAM ON C=(5/9) (F-32) USING COMPUTE VERB .
IDENTIFICATION DIVISION .
ENVIRONMENT DIVISION .
DATA DIVISION .
WORKING-STORAGE SECTION.
01 F PIC 9(4).
01 C PIC -9(4).9(4).
PROCEDURE
DIVISION .
MAIN.
DISPLAY "ENTER F VALUE : ".
ACCEPT F.
COMPUTE C = (5/9) * (F - 32 ) .
DISPLAY "C=(5/9)*(F-32) IS : " C.
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL>COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
ENTER F VALUE:100
C=(5/9)*(F-32) IS : 37.7778
ENTER F VALUE:90
C=(5/9)*(F-32) IS : 32.2224

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:1

DATE: 23/2/2013

Aim:-TO PERFORM A COBOL PROGRAM FOR C=(5/9)*(F-32) USING


ARITHAMATIC VERBS .
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 R1 PIC 9(1)V9(4).
01 R2 PIC 9(4).
01 F PIC 9(4).
01 C PIC -9(4).9(4).
PROCEDURE DIVISION.
MAIN.
DISPLAY "ENTER F VALUE : ".
ACCEPT F.
DIVIDE 5 BY 9 GIVING R1.
SUBTRACT 32 FROM F GIVING R2.
MULTIPLY R1 BY R2 GIVING C.
DISPLAY "C = (5/9)*(F-32) IS : " C.
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
ENTER F VALUE:100
C=(5/9)*(F-32) IS : 37.7778
ENTER F VALUE:90
C=(5/9)*(F-32) IS : 32.2224

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:1

DATE: 23/2/2013

Aim:-TO PERFORM A PROGRAM TO FIND THE AREA OF A CIRCLE.


*COBOL PROGRAM FOR A=(22/7)*R*R USING COMPUTE VERB .
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 PI PIC 9V9(4) VALUE 3.14.
01 R PIC 9(3)V9(4).
01 A PIC 9(4).9(4).
PROCEDURE DIVISION.
MAIN.
DISPLAY " ENTER R VALUE : ".
ACCEPT R.
COMPUTE A = PI * ( R ** 2 ).
DISPLAY " A=(22/7)*R*R : " A.
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
ENTER R VALUE:5
A=(22/7)*R*R VALUE IS:78.5714

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:1

DATE: 23/2/2013

Aim:-TO PERFORM A PROGRAM TO FIND THE AREA= (22/7)*R*R USING


ARITHAMATIC VERBS .
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 PI PIC 9V9(4).
01 R PIC 9(3)V9(4).
01 SQ-R PIC 9(3)V9(4).
01 A PIC 9(4).9(4).
PROCEDURE DIVISION.
MAIN.
DISPLAY "ENTER R VALUE : ".
ACCEPT R.
DIVIDE 22 BY 7 GIVING PI.
MULTIPLY R BY R GIVING SQ-R.
MULTIPLY PI BY SQ-R GIVING A.
DISPLAY " A=(22/7)*R^2 IS : "A.
STOP RUN.
/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
ENTER R VALUE:5
A=(22/7)*R*R VALUE IS:78.5714

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:2

DATE:09/3/2013

2) SELECTION (IF, EVALUATE) AND ITERATIONH (PERFORM)


EXAMPLE PROGRAMS.
i) Aim:-TO FIND THE FACTORIAL OF A NUMBER.
IDENTIFICATION DIVISION.
PROGRAM-ID.FACT.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 N PIC 9(5).
01 I PIC 9(3).
01 F PIC 9(12) VALUE 1.
PROCEDURE DIVISION.
MAIN.
DISPLAY (10,30)"ENTER THE N VALUE:".
ACCEPT (11,30) N.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > N
COMPUTE F = F * I.
DISPLAY (12,30)"THE FACT VALUE IS :" F.
STOP RUN.
/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
ENTER N VALUE:5
The Factorial Value is =120.
II). IDENTIFICATION DIVISION.
PROGRAM-ID. IF-ELSE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 NUM1 PIC 99.
77 NUM2 PIC 99.
PROCEDURE DIVISION.
7

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
PARA-1.
DISPLAY "ENTER NUM1..." WITH NO ADVANCING.
ACCEPT NUM1.
DISPLAY "ENTER NUM2..." WITH NO ADVANCING.
ACCEPT NUM2.
IF NUM1 = NUM2
CONTINUE
ELSE
IF NUM1 > NUM2
DISPLAY NUM1 " IS GREATER THAN " NUM2
ELSE
DISPLAY NUM2 " IS GREATER THAN " NUM1
END-IF
END-IF.
STOP RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER NUM1...34
ENTER NUM2...31
34 IS GREATER THAN 31
III) IDENTIFICATION DIVISION.
PROGRAM-ID. EVALUATE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 MARKS PIC 9(3).
88 FIRST1 VALUE 60 THRU 100.
88 SECOND1 VALUE 50 THRU 59.
88 PASS1 VALUE 40 THRU 49.
PROCEDURE DIVISION.
PARA-1.
DISPLAY "ENTER PECENTAGE OF MARKS :-> " WITH NO ADVANCING.
ACCEPT MARKS.
EVALUATE TRUE
WHEN FIRST1
DISPLAY "FIRST CLASS"
WHEN SECOND1
DISPLAY "SECOND CLASS"
WHEN PASS1
DISPLAY "PASS CLASS"
WHEN OTHER
DISPLAY "FAIL"
END-EVALUATE.
8

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
STOP-RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER PERCENTAGE OF MARKS :-> 65
FIRST CLASS IDENTIFICATION DIVISION.
PROGRAM-ID. EVALUATE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 MARKS PIC 9(3).
88 FIRST1 VALUE 60 THRU 100.
88 SECOND1 VALUE 50 THRU 59.
88 PASS1 VALUE 40 THRU 49.
PROCEDURE DIVISION.
PARA-1.
DISPLAY "ENTER PECENTAGE OF MARKS :-> " WITH NO ADVANCING.
ACCEPT MARKS.
EVALUATE TRUE
WHEN FIRST1
DISPLAY "FIRST CLASS"
WHEN SECOND1
DISPLAY "SECOND CLASS"
WHEN PASS1
DISPLAY "PASS CLASS"
WHEN OTHER
DISPLAY "FAIL"
END-EVALUATE.
STOP-RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER PERCENTAGE OF MARKS :-> 65
FIRST CLASS IDENTIFICATION DIVISION.
PROGRAM-ID. EVALUATE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 MARKS PIC 9(3).
88 FIRST1 VALUE 60 THRU 100.
9

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
88 SECOND1 VALUE 50 THRU 59.
88 PASS1 VALUE 40 THRU 49.
PROCEDURE DIVISION.
PARA-1.
DISPLAY "ENTER PECENTAGE OF MARKS :-> " WITH NO ADVANCING.
ACCEPT MARKS.
EVALUATE TRUE
WHEN FIRST1
DISPLAY "FIRST CLASS"
WHEN SECOND1
DISPLAY "SECOND CLASS"
WHEN PASS1
DISPLAY "PASS CLASS"
WHEN OTHER
DISPLAY "FAIL"
END-EVALUATE.
STOP-RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER PERCENTAGE OF MARKS :-> 65
FIRST CLASS IDENTIFICATION DIVISION.
PROGRAM-ID. EVALUATE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 MARKS PIC 9(3).
88 FIRST1 VALUE 60 THRU 100.
88 SECOND1 VALUE 50 THRU 59.
88 PASS1 VALUE 40 THRU 49.
PROCEDURE DIVISION.
PARA-1.
DISPLAY "ENTER PECENTAGE OF MARKS :-> " WITH NO ADVANCING.
ACCEPT MARKS.
EVALUATE TRUE
WHEN FIRST1
DISPLAY "FIRST CLASS"
WHEN SECOND1
DISPLAY "SECOND CLASS"
WHEN PASS1
DISPLAY "PASS CLASS"
WHEN OTHER
DISPLAY "FAIL"
10

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
END-EVALUATE.
STOP-RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER PERCENTAGE OF MARKS :-> 65
FIRST CLASS IDENTIFICATION DIVISION.
PROGRAM-ID. EVALUATE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 MARKS PIC 9(3).
88 FIRST1 VALUE 60 THRU 100.
88 SECOND1 VALUE 50 THRU 59.
88 PASS1 VALUE 40 THRU 49.
PROCEDURE DIVISION.
PARA-1.
DISPLAY "ENTER PECENTAGE OF MARKS :-> " WITH NO ADVANCING.
ACCEPT MARKS.
EVALUATE TRUE
WHEN FIRST1
DISPLAY "FIRST CLASS"
WHEN SECOND1
DISPLAY "SECOND CLASS"
WHEN PASS1
DISPLAY "PASS CLASS"
WHEN OTHER
DISPLAY "FAIL"
END-EVALUATE.
STOP-RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER PERCENTAGE OF MARKS :-> 65
FIRST CLASS IDENTIFICATION DIVISION.
PROGRAM-ID. EVALUATE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 MARKS PIC 9(3).
11

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
88 FIRST1 VALUE 60 THRU 100.
88 SECOND1 VALUE 50 THRU 59.
88 PASS1 VALUE 40 THRU 49.
PROCEDURE DIVISION.
PARA-1.
DISPLAY "ENTER PECENTAGE OF MARKS :-> " WITH NO ADVANCING.
ACCEPT MARKS.
EVALUATE TRUE
WHEN FIRST1
DISPLAY "FIRST CLASS"
WHEN SECOND1
DISPLAY "SECOND CLASS"
WHEN PASS1
DISPLAY "PASS CLASS"
WHEN OTHER
DISPLAY "FAIL"
END-EVALUATE.
STOP-RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER PERCENTAGE OF MARKS :-> 65
FIRST CLASS IDENTIFICATION DIVISION.
PROGRAM-ID. EVALUATE1.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 MARKS PIC 9(3).
88 FIRST1 VALUE 60 THRU 100.
88 SECOND1 VALUE 50 THRU 59.
88 PASS1 VALUE 40 THRU 49.
PROCEDURE DIVISION.
PARA-1.
DISPLAY "ENTER PECENTAGE OF MARKS :-> " WITH NO ADVANCING.
ACCEPT MARKS.
EVALUATE TRUE
WHEN FIRST1
DISPLAY "FIRST CLASS"
WHEN SECOND1
DISPLAY "SECOND CLASS"
WHEN PASS1
DISPLAY "PASS CLASS"
WHEN OTHER
12

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
DISPLAY "FAIL"
END-EVALUATE.
STOP-RUN.
#--------------------------------------------------------------------------------#
OUTPUT
#--------------------------------------------------------------------------------#
ENTER PERCENTAGE OF MARKS :-> 65
FIRST CLASS

EXPEREMENT NO:2

DATE: 09/3/2013

iV) Aim: TO PERFORM A PROGRAM TO INPUT HOURS, MINUTES AND


SECONDS AND DISPLAY A DIGITAL CLOCK IN THE CENTRE OF THE
SCREAN.
IDENTIFICATION DIVISION.
PROGRAM-ID. AcceptAndDisplay.
AUTHOR.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 StudentDetails.
02 StudentId
PIC 9(7).
02 StudentName.
03 Surname
PIC X(8).
03 Initials
PIC XX.
02 CourseCode
PIC X(4).
02 Gender
PIC X.
* YYMMDD
01 CurrentDate.
02 CurYear
PIC 9(2).
02 CurrentMonth PIC 99.
02 CurrentDay
PIC 99.
* YYDDD
01 DayOfYear.
02 FILLER
PIC 9(2).
02 YearDay
PIC 9(3).
* HHMMSSss s = S/100
01 CurrentTime.
02 CurrentHour
PIC 99.
02 CurrentMinute PIC 99.
02 FILLER
PIC 9(4).
PROCEDURE DIVISION.
Begin.
13

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
DISPLAY "Enter student details using template below".
DISPLAY "Enter - ID,Surname,Initials,CourseCode,Gender"
DISPLAY "SSSSSSSNNNNNNNNIICCCCG".
ACCEPT StudentDetails.
ACCEPT CurrentDate FROM DATE.
ACCEPT DayOfYear FROM DAY.
ACCEPT CurrentTime FROM TIME.
DISPLAY "Name is" Initials Surname.
DISPLAY "Dateis:" CurrentDay ":" CurrentMonth ":" CurYear.
DISPLAY "Today is day:" YearDay "of the year".
DISPLAY (15 15) "The time is" CurrentHour ":" CurrentMinute.
STOP RUN.
/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
Date is:06-05-1999
Time is: 11:56:57.
Current day of the year is:126.99

EXPEREMENT NO:2

DATE: 09/3/2013

iii) Aim: TO PERFORM A PROGRAM TO ILLUSTRATE OF REDEFINES AND


RENAMES CLAUSE.
IDENTIFICATION DIVISION.
PROGRAM-ID. EBILL.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 CH PIC 9 VALUE ZERO.
14

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
01 COMPUTER-REC.
02 COMPUTER-CODE PIC X(16) VALUE "0001PCXTMON04000".
02 NEW-CODE REDEFINES COMPUTER-CODE.
03 SNO PIC 9(4).
03 TYPE PIC X(4).
03 VDU PIC X(4).
03 PRICE PIC 9(4).
01 EMP-REC.
02 EMP-PERSONAL.
03 EMP-NAME PIC X(20) VALUE "CHIRALA".
03 EMP-ADR PIC X(35) VALUE "RAMAPURAM ROAD CHIRALA".
02 EMP-OFFICE.
03 EMP-CODE PIC X(4) VALUE "A001".
03 EMP-DESIGN PIC A(10) VALUE "MANAGER".
02 EMP-ALLOW.
03 BASIC PIC 9(5) VALUE 10000.
03 HRA PIC 9(4) VALUE 3000.
66 EMP-INFO RENAMES EMP-CODE THRU BASIC.
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY (4, 10) "1.REDEFINES CLAUSE".
DISPLAY (6, 10) "2.RENAMES CLAUSE".
DISPLAY (10, 10) "ENTER YOUR CHOICE : ".
ACCEPT CH.
IF CH = 1
DISPLAY (15, 10) "REDEFINES CLAUSE"
DISPLAY (16, 10) SNO
DISPLAY (17, 10) TYPE
DISPLAY (18, 10) VDU
DISPLAY (19, 10) PRICE
ELSE
DISPLAY (15, 10) "RENAME CLAUSE"
DISPLAY (16, 10) "EMPLOYEE INFORMATION IS: " EMP-INFO.
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
1.REDEFINES CLAUSE
2.RENAMES CLAUSE
ENTER YOUR CHOICE:1

15

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
REDEFINES CLAUSE
0001
PCXT
MONO
4000
ENTER YOUR CHOICE:2
RENAMES CLAUSE
EMPLOYEE INFORMATION IS A001 MANAGER 10000.

EXPEREMENT NO:3.1

DATE:16/3/2013

3) EXAMPLE PROGRAM USING TABLES.

i) AIM:-TO PERFORM MATRIX MULTIPLICATION.


IDENTIFICATION DIVISION.
PROGRAM-ID. MUL.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 TABLE.
16

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
02 TA OCCURS 3 TIMES.
03 A PIC 9(3) OCCURS 3 TIMES.
03 B PIC 9(3) OCCURS 3 TIMES.
03 C PIC 9(3) OCCURS 3 TIMES.
77 I PIC 9.
77 J PIC 9.
77 K PIC 9.
77 R1 PIC 9.
77 C1 PIC 9.
77 R2 PIC 9.
77 C2 PIC 9.
77 PROD PIC 9(4).
77 DUP PIC Z(4).
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY (2 5) "ENTER NO. OF ROWS FOR MATRIX A :".
ACCEPT (2 40) R1.
DISPLAY (3 5) "ENTER NO. OF COLUMNS FOR MATRIX A:".
ACCEPT (3 40) C1.
DISPLAY (4 5) "ENTER NO. OF ROWS FOR MATRIX B :".
ACCEPT (4 40) R2.
DISPLAY (5 5) "ENTER NO. OF COLOUMS FOR MATRIX B:".
ACCEPT (5 40) C2.
IF C1 = R2
PERFORM A-PARA
ELSE
DISPLAY "SORRY NOT POSSIBLE".
STOP RUN.
A-PARA.
DISPLAY (6 10) "ENTER FIRST MATRIX" .
MOVE 7 TO LIN.
MOVE 10 TO COL.
PERFORM B-PARA VARYING I FROM 1 BY 1 UNTIL I>R1.
DISPLAY (6 40) "ENTER SECOND MATRIX".
MOVE 7 TO LIN.
MOVE 45 TO COL.
PERFORM C-PARA VARYING I FROM 1 BY 1 UNTIL I>R2.
PERFORM D-PARA VARYING I FROM 1 BY 1 UNTIL I>R1
AFTER J FROM 1 BY 1 UNTIL J>C2.
DISPLAY (13 10) "THE PRODUCT OF TWO MATRICES".
MOVE 14 TO LIN.
MOVE 35 TO COL.
PERFORM F-PARA VARYING I FROM 1 BY 1 UNTIL I>R1.
B-PARA.
ADD 2 TO LIN.
MOVE 10 TO COL.
PERFORM ACC-PARA VARYING J FROM 1 BY 1 UNTIL J>C1.
ACC-PARA.
ACCEPT (LIN, COL) A(I J).
17

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
ADD 5 TO COL.
C-PARA.
ADD 2 TO LIN.
MOVE 45 TO COL.
PERFORM ACC1-PARA VARYING J FROM 1 BY 1 UNTIL J>C2.
ACC1-PARA.
ACCEPT (LIN, COL) B(I J).
ADD 5 TO COL.
D-PARA.
MOVE 0 TO C(I J).
PERFORM PROC-PARA VARYING K FROM 1 BY 1 UNTIL K>C1.
PROC-PARA.
COMPUTE PROD = A(I K) * B(K J).
COMPUTE C(I J) = C(I J) + PROD.
F-PARA.
ADD 2 TO LIN.
MOVE 35 TO COL.
PERFORM DIS-PARA VARYING J FROM 1 BY 1 UNTIL J>C2.
DIS-PARA.
MOVE C(I J) TO DUP.
DISPLAY (LIN, COL) DUP.
ADD 5 TO COL.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SAMP.COB;
E:\COBOL\COBOL>RUNCOB SAMP
ENTER NO.OF ROWS FOR MATRIX A:2
ENTER NO.OF COLUMNS FOR MATRIX A:2
ENTER NO.OF ROWS FOR MATRIX B:2
ENTER NO.OF COLUMNS FOR MATRIX B:2
ENTER THE ELEMENTS OF FIRST MATRIX:
1
2
3
4
ENTER THE ELEMENTS OF SECOND MATRIX:
5
18

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
6
7
8
THE PRODUCT OF TWO MATRIX IS:
26
30
38
44

EXPEREMENT NO:3.2

DATE: 16/3/2013

ii) Aim:- TO PERFORAM A PROGRAM FOR LINEAR SEARCH.


*COBOL PROGRAM FOR LINEAR SEARCH .
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 LINEAR-SEARCH.
02 ARRAY PIC 99 OCCURS 10 TIMES .
77 I PIC 99.
77 N PIC 99.
77 REQ PIC 99.
PROCEDURE DIVISION.
MAIN.
DISPLAY "ENTER n VALUE : ".
19

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
ACCEPT N.
PERFORM READ-PARA VARYING I FROM 1 BY 1 UNTIL I > N .
DISPLAY "ENTER REQUIRED NUM : ".
ACCEPT REQ.
PERFORM SEARCH-PARA VARYING I FROM 1 BY 1 UNTIL I > N.
DISPLAY "REQ DOES NOT EXIST IN ARRAY".
STOP RUN.
READ-PARA.
DISPLAY "ENTER " I " ELEMENT ".
ACCEPT ARRAY (I) .
SEARCH-PARA.
IF ( REQ = ARRAY (I) )
DISPLAY REQ " EXIST AT " I " LOCATION IN ARRAY"
STOP RUN.
/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL LINEAR.COB;
E:\COBOL\COBOL>RUNCOB LINEAR
ENTER N VALUE:5
VALUES ARE
ENTER 1 ELEMENT:10
ENTER 2 ELEMENT:20
ENTER 3 ELEMENT:30
ENTER 4 ELEMENT:40
ENTER 5 ELEMENT:50
ENTER REQUIRED VALUE: 30
ENTER REQUIRED VALUE 30 IS EXIST.AT SECOND COLUM IN THE ARRAY
EXPEREMENT NO:3.2

DATE: 23/3/2013

Aim:-TO PERFORM A BINARY SEARCH.


IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 ARRAY PIC 99 OCCURS 10 TIMES .
77 I PIC 99.
77 N PIC 99.
77 REQ PIC 99.
77 LOW1 PIC 99 .
77 HIGH1 PIC 99 .
77 MID1 PIC 99.
PROCEDURE DIVISION.
MAIN.
DISPLAY "ENTER n VALUE : ".
ACCEPT N.
20

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
MOVE 1 TO LOW1.
MOVE N TO HIGH1.
PERFORM READ-PARA VARYING I FROM 1 BY 1 UNTIL I > N .
DISPLAY "ENTER REQUIRED NUM : ".
ACCEPT REQ.
PERFORM SEARCH-PARA VARYING I FROM 1 BY 1 UNTIL I > N.
DISPLAY "REQ DOES NOT EXIST IN ARRAY".
STOP RUN.
READ-PARA.
DISPLAY "ENTER " I " ELEMENT ".
ACCEPT ARRAY (I) .
SEARCH-PARA.
COMPUTE MID1 = ( LOW1 + HIGH1 ) / 2 .
IF ( ARRAY ( MID1 ) = REQ )
DISPLAY REQ " EXIST AT " MID1 " IN ARRAY"
ELSE
IF ( REQ < ARRAY ( MID1 ) )
COMPUTE HIGH1 = MID1 - 1
ELSE
COMPUTE LOW1 = MID1 + 1.

/**********OUTPUT ***********/
E:\COBOL\COBOL>COBOL BINARY.COB;
E:\COBOL\COBOL>RUNCOB BINARY
ENTER N VALUE:5
VALUES ARE
ENTER 1 ELEMENT:10
ENTER 2 ELEMENT:20
ENTER 3 ELEMENT:30
ENTER 4 ELEMENT:40
ENTER 5 ELEMENT:50
ENTER REQUIRED VALUE: 30
ENTER REQUIRED VALUE EXIST AT SECOND LOCATION IN THE ARRAY.

21

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:4

DATE:30/3/2013

4) EXAMPLE PROGRAMS THAT SHOW HOW TO USE REFERENCE


MODIFICATION,STRING,UNSTRINF,INSPECT AND UNSTRING.

Aim:-TO ILLUSTRATE A PROGRAM THAT CHANGES ALL INSTANCES OF


"MR" OR "Mr BY "SRI" AND "MRS" OR Mrs" BY "SMT".
* COBOL PROGRAM ON INSPECT VERB
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 NAME PIC X(40).
PROCEDURE
DIVISION.
MAIN.
DISPLAY "ENTER NAME : ".
ACCEPT NAME.
INSPECT NAME REPLACING ALL "MRS" BY "SMT", "MR" BY "SRI".
DISPLAY NAME.
STOP RUN.

22

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL INSPECT.COB;
E:\COBOL\COBOL>RUNCOB INSPECT
ENTER NAME:
Mr:MANI
Mrs:KALYANI
CHANGED NAME IS:
SRI:MANI
SMT:KALYANI

EXPEREMENT NO:4

DATE: 30/3/2013

Aim:- TO ILLUSTRATE A EXAMPLE PROGRM THAT USE REFERENCE


MODIFICATION, STRING, UNSTRING, INSPECT.
i) PROGRAM TO UNSTRING
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING_STORAGE SECTION.
77 F1 PIC X(10).
77 F2 PIC X(12).
77 F3 PIC X(10).
77 DATA PIC X(38) VALUE IS "CHIRALA ENGINEERING COLLEGE".
PROCEDURE DIVISION.
MAIN.
UNSTRING DATA DELIMITED BY " " INTO F1, F2, F3.
DISPLAY F1, F2, F3.
STOP RUN.

/**********OUTPUT ***********/
23

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
E:\COBOL\COBOL> COBOL UNSTRING.COB;
E:\COBOL\COBOL>RUNCOB UNSTRING
CHIRALA ENGINEERING COLLEGE
CHIRALA
ENGINEERING
COLLEGE

EXPEREMENT NO:4

DATE: 30/3/2013

ii) Aim: REFERENCE MODIFICATION.


IDENTIFICATION DIVISION.
DATA DIVISION.
WORKING_STORAGE SECTION.
77 NAME PIC X(20) VALUE IS "CHIRALA ENGINEERING COLLEGE".
PROCEDURE DIVISION.
MAIN.
DISPLAY (5 10) "NAME".
MOVE NAME(1 5) TO TEMP.
DISPLAY TEMP.
MOVE NAME (6 10) TO TEMP.
DISPLAY TEMP.
STOP RUN.

/**********OUTPUT ***********/
CHIRALA ENGINEERING COLLEGE
CHIRA
LA EN

24

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:4

DATE: 30/3/2013

iii) Aim: TO ILLUSTRATE A PROGRAM ON STRING STATEMENT


IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING_STORAGE SECTION.
77 F1 PIC X(15) VALUE IS "CHIRALA".
77 F1 PIC X(15) VALUE IS "ENGINEERING".
77 F1 PIC X(15) VALUE IS "COLLEGE".
PROCEDURE DIVISION.
MAIN.
STRING F1, F2, F3 DELIMITED BY "." INTO DATA FIELD.
DISPLAY DATA FIELD.
STOP RUN.

/**********OUTPUT ***********/
CHIRALA
ENGINEERING
COLLEGE
CHIRALA ENGINEERING COLLEGE

25

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:5.1

DATE:06/4/2013

5) PROGRAMS THAT DEMONSTRATE HOW TO PROCESS


SEQUENTIAL FILES.

i) Aim:-TO ILLUSTRATE A PROGRAM TO PRINT ELECTRICITY BILL.


IDENTIFICATION DIVISION.
PROGRAM-ID. STUDENT.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT FILE1 ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL
ACCESS MODE IS SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD FILE1
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID "EBILL.TXT".
01 EBILL-REC.
02 HNO
PIC X(10).
02 OPERATOR PIC A(10).
02 OWNER-NAME PIC X(10).
02 ZONE PIC A(10).
02 CATEGORY PIC X(2).
02 PREV-READING PIC 9(10).
02 CURR-READING PIC 9(10).
02 UNIT-CHARGE PIC 9999V99.
26

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
02 TOTAL
PIC 9(10).
WORKING-STORAGE SECTION.
01 CHK PIC A VALUE IS 'Y'.
01 CHARGE PIC 9999V99 VALUE IS 1.50.
PROCEDURE DIVISION.
PARA1.
OPEN OUTPUT FILE1.
PARA2.
INITIALIZE EBILL-REC.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 10)"ENTER THE DETAILS OF BILL".
DISPLAY(5, 1) "-----------------------------------------".
DISPLAY (7, 1) "HNO OPERATOR OWNER-NAME ZONE CATEGORY
PREV-READING
CURR-READING " .
DISPLAY(9, 1) "-----------------------------------------".
ACCEPT (11, 1)HNO.
ACCEPT (11, 11) OPERATOR.
ACCEPT (11, 21) OWNER-NAME.
ACCEPT (11, 32) ZONE.
ACCEPT (11, 37) CATEGORY.
ACCEPT (11, 48) PREV-READING.
ACCEPT (11, 62) CURR-READING.
MOVE CHARGE TO UNIT-CHARGE.
COMPUTE TOTAL = (CURR-READING - PREV-READING )
WRITE EBILL-REC.
DISPLAY (1, 1) ERASE.
DISPLAY (3, 5) " RECORD ENTERED".
DISPLAY (5, 5) "DO U WANT TO ENTER ANOTHER Y/N:"
ACCEPT (7, 5) CHK.
IF CHK = "Y" GO TO PARA2.
CLOSE FILE1.
HEAD-PARA.
DISPLAY(1, 1) ERASE.
DISPLAY(2 1) "---------------------------------------".
DISPLAY (4 5)"
APSEB
".
DISPLAY (6 1)"-------------------------------------------".
DISPLAY (8 1)"HNO OPERATOR OWNER-NAME ZONE CATEGORY
-PREV-READING
CUR-READING UNIT-COST
TOTAL" .
OPEN INPUT FILE1.
PARA3.
MOVE 11 TO LIN.
READ FILE1 AT END GO TO PARA5.
PERFORM PARA4.
PARA4.
DISPLAY (LIN 1) HNO.
DISPLAY (LIN 11) OPERATOR.
DISPLAY (LIN 22) OWNER-NAME.
DISPLAY (LIN 33) ZONE.
27

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
DISPLAY (LIN 39) CATEGORY.
DISPLAY (LIN 49) PREV-READING.
DISPLAY (LIN 59) CURR-READING.
DISPLAY (LIN 69) UNIT-CHARGE.
DISPLAY (LIN 75) TOTAL.
COMPUTE LIN = LIN + 2.
GO TO PARA3.
PARA5.
CLOSE FILE1
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL BILL.COB;
E:\COBOL\COBOL>RUNCOB BILL

H.NO

OWNER
NAME

ZONE

8-50
10-20
101.20

MANI
SITA
PADMA

F
Z
R

CURREN PREVIOU
T
S
READING READING
360
200
490
400
2000
1940

UNIT
PRICE

TOTAL

1.50
1.50
1.50

240
------------

28

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:5.2

DATE: 06/4/2013

ii )Aim:-TO ILLUSTRATE A PROGRAM FOR MERGING THREE FILES.


IDENTIFICATION DIVISION.
PROGRAM-ID.MERGEFILE.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SEQ1-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT SEQ2-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT SEQ3-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT MERGE-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT TEMP-FILE ASSIGN TO DISK.
DATA DIVISION.
FILE SECTION.
FD SEQ1-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STU1.DAT"
DATA RECORD IS SEQ1-REC.
01 SEQ1-REC.
02 REGNO PIC X(8).
02 STUDNAME PIC X(20).
02 STUDADDR PIC X(30).
02 TOTMARKS PIC 9(3).
FD SEQ2-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STU2.DAT"
29

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
DATA RECORD IS SEQ2-REC.
01 SEQ2-REC.
02 RNO PIC X(8).
02 SNAME PIC X(20).
02 SADDR PIC X(30).
02 TOTALMARKS PIC 9(3).
FD SEQ3-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STU3.DAT"
DATA RECORD IS SEQ3-REC.
01 SEQ3-REC.
02 CRNO PIC X(8).
02 CSNAME PIC X(20).
02 CSADDR PIC X(30).
02 CTOTALMARKS PIC 9(3).
SD TEMP-FILE.
01 TEMP-REC.
02 TREGNO PIC X(8).
02 TSTUDNAME PIC X(20).
02 TSTUDADDR PIC X(30).
02 TTOTMARKS PIC 9(3).
FD MERGE-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "MERGE.DAT".
01 MERGE-REC.
02 SREGNO PIC X(8).
02 SSTUDNAME PIC X(20).
02 SSTUDADDR PIC X(30).
02 STOTMARKS PIC 9(3).
PROCEDURE DIVISION.
MAIN-PARA.
MERGE TEMP-FILE ON ASCENDING KEY TTOTMARKS OF TEMP-REC
ON DESCENDING KEY TSTUDNAME OF TEMP-REC USING SEQ1FILE,
- SEQ2-FILE, SEQ3-FILE GIVING MERGE-FILE.
DISPLAY (5 10) "THE SORTED FILE IS INSORT.DAT".
STOP RUN.

30

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL MERGING.COB;
E:\COBOL\COBOL>RUNCOB MERGING
SEQ1-FILE
1
RANI
GUNTER
500
SEQ2-FILE
10
KALYANI
HYDERABAD
550
SEQ3-FILE
5
SITA
KADAPA
560
THE MERGING FILE IS:
NO

NAME
5

ADDRESS
SITA

TOTAL
KADAPA

560

31

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
1

RANI

GUNTER

500
10

KALYANI

HYDERABAD

550

EXPEREMENT NO:5.3

DATE: 06/4/2013

iii) Aim:-TO ILLLUSTRATE A PROGRAM WHICH ACCEPTS STUDENTS


DETAILS FROM A FILE AND DISPLAYS THEN ALONG WITH GRADES. INPUT
FILE SHOULD HAVE DETAILS REGRADING ROLL-NO AND MARKS IN THREE
SUBJECTS.
* CREATION OF SEQUENTIAL FILE.
IDENTIFICATION DIVISION.
PROGRAM-ID. CSEQ.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL
SELECT STU-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD STU-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUD.DAT".
01 STU-REC.
02 ROLLNO PIC X(10).
02 NAME PIC X(10).
02 MATHS PIC 9(3).
02 PHYSICS PIC 9(3).
02 COMPUTERS PIC 9(3).
WORKING-STORAGE SECTION.
77 CH PIC A VALUE "Y".
PROCEDURE DIVISION.
MAIN-PARA.
OPEN OUTPUT STU-FILE.
PERFORM ACCEPT-PARA UNTIL CH = "N".
PERFORM CLOSE-PARA.
32

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
STOP RUN.
ACCEPT-PARA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 10) "ENTER ROLLNO: ".
ACCEPT (2, 40) ROLLNO.
DISPLAY (3, 10) "ENTER NAME: ".
ACCEPT (3, 40) NAME.
DISPLAY (4, 10) "ENTER MATHS MARKS: ".
ACCEPT (4, 40) MATHS.
DISPLAY (5, 10) "ENTER PHYSICS MARKS: ".
ACCEPT (5, 40) PHYSICS.
DISPLAY (6, 10) "ENTER COMPUTERS MARKS: ".
ACCEPT (6, 40) COMPUTERS.
WRITE STU-REC.
DISPLAY (20, 10) "DO U WANT TO ENTER ANOTHER RECORD".
ACCEPT (20, 55) CH.
CLOSE-PARA.
CLOSE STU-FILE.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL STU.COB;
E:\COBOL\COBOL>RUNCOB STU
ENTER
ENTER
ENTER
ENTER
ENTER
ENTER

STUDENT DETAILS:
ROLL NO:035
NAME:HEMANTH
MATHS MARKS:40
PHYSIS MARKS:50
COMPUTER MARKS:60

DO YOU WANT TO ENTER AN OTHER RECORD:Y


ENTER
ENTER
ENTER
ENTER
ENTER

ROLL NO:012
NAME:VIVEK
MATHS MARKS:70
PHYSIS MARKS:80
COMPUTER MARKS:90

DO YOU WANT TO ENTER AN OTHER RECORD:N

33

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:5.4

DATE: 06/4/2013

* DISPLAYING OF SEQUENTIAL FILE.


IDENTIFICATION DIVISION.
PROGRAM-ID. ACSEQ.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL
SELECT STU-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD STU-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUD.DAT".
01 STU-REC.
02 ROLLNO PIC 9(3).
02 NAME PIC A(10).
02 MATHS PIC 9(3).
02 PHYSICS PIC 9(3).
02 COMPUTERS PIC 9(3).
WORKING-STORAGE SECTION.
77 TOT PIC 9(3) VALUE 0.
77 AVG PIC 9(3) VALUE 0.
77 GRADE PIC X(3).
77 EOF PIC X VALUE SPACES.
77 N PIC 9(3) VALUE 0.
77 FLAG PIC 9 VALUE 0.
01 HEAD1.
02 FILLER PIC X(25) VALUE SPACES.
02 FILLER PIC X(35) VALUE "CHIRALA ENGINEERING COLLEGE".
01 LINE1.
02 FILLER PIC X(25) VALUE SPACES.
02 FILLER PIC X(27) VALUE ALL "_".
01 HEAD2.
02 FILLER PIC X(2) VALUE SPACES.
34

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
02
02
02
02
02
02
02
02
02

FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER
FILLER

PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC
PIC

X(6)
X(2)
X(4)
X(2)
X(5)
X(2)
X(5)
X(2)
X(7)

VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE
VALUE

"ROLLNO".
SPACES.
"NAME".
SPACES.
"MARKS".
SPACES.
"MATHS".
SPACES.
"PHYSICS".

02 FILLER PIC X(2) VALUE SPACES.


02 FILLER PIC X(9) VALUE "COMPUTERS".
02 FILLER PIC X(2) VALUE SPACES.
02 FILLER PIC X(5) VALUE "TOTAL".
02 FILLER PIC X(2) VALUE SPACES.
02 FILLER PIC X(7) VALUE "AVERAGE".
02 FILLER PIC X(2) VALUE SPACES.
02 FILLER PIC X(7) VALUE "GRADE".
01 LINE2.
02 FILLER PIC X(70) VALUE ALL "_".
01 PRINT-STU-REC.
02 FILLER PIC X(2) VALUE SPACES.
02 DROLLNO PIC X(10).
02 FILLER PIC X(2) VALUE SPACES.
02 DNAME PIC A(10).
02 FILLER PIC X(2) VALUE SPACES.
02 DMATHS PIC 9(3).
02 FILLER PIC X(2) VALUE SPACES.
02 DPHYSICS PIC 9(3).
02 FILLER PIC X(2) VALUE SPACES.
02 DCOMPUTERS PIC 9(3).
02 FILLER PIC X(2) VALUE SPACES.
02 DTOT PIC 9(3).
02 FILLER PIC X(2) VALUE SPACES.
02 DAVG PIC 9(3).
02 FILLER PIC X(2) VALUE SPACES.
02 DGRADE PIC X(3).
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY "ENTER STUDENT NO".
ACCEPT N.
OPEN INPUT STU-FILE
PERFORM READ-PARA UNTIL EOF="Y".
IF FLAG=0
DISPLAY "RECORD NOT FOUND".
PERFORM CLOSE-PARA.
STOP RUN.
READ-PARA.
READ STU-FILE AT END MOVE "Y" TO EOF.
35

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
IF EOF NOT = "Y" OR SNO = N
PERFORM DISPLAY-PARA.
DISPLAY-PARA.
MOVE 1 TO FLAG.
COMPUTE TOT = MATHS + PHYSICS + COMPUTERS.
COMPUTE AVG =TOT / 3.
IF AVG>75 AND MATHS > 35 AND PHYSICS > 35 AND COMPUTERS
> 35
MOVE "A" TO GRADE
ELSE
IF AVG > 60
MOVE "B" TO GRADE
ELSE
IF AVG > 50
MOVE "C" TO GRADE
ELSE R "F" TO GRADE.
MOVE SROLLNO TO DROLLNO.
MOVE NAME TO DNAME.
MOVE MATHS TO DMATHS.
MOVE PHYSICS TO DPHYSICS.
MOVE COMPUTERS TO DCOMPUTERS.
MOVE TOT TO DTOT.
MOVE AVG TO DAVG.
MOVE GRADE TO DGRADE.
DISPLAY HEAD1.
DISPLAY LINE1.
DISPLAY HEAD2.
DISPLAY LINE2.
DISPLAY PRINT-STU-REC.
DISPLAY LINE2.
CLOSE-PARA.
CLOSE STU-FILE.

/**********OUTPUT ***********/
ENTER STUDENT NO:

CHIRALA ENGINEERING COLLEGE


ROLL
NO

NAME

MATHS

PHYSIC
S

COMPUT
ER

TOTAL

AVG

GRADE

035

HEMANT

40

50

60

150

50

C
36

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
012

H
VIVEK

70

80

EXPEREMENT NO:6.1

90

240

80

DATE:24/4/2013

6) EXAMPLES THAT USE INPUT PROCEDURES THAT SORT AND


MERGE VERBS.

Aim:- TO PERFORM A SEQUENTIAL FILE CREATION FOR SORTING.


IDENTIFICATION DIVISION.
PROGRAM-ID. CSEQ.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT STU1-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD STU1-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT.DAT".
01 STU1-REC.
02 SNO PIC 9(3).
02 SNAME PIC X(10).
02 SMARKS PIC 9(3).
WORKING-STORAGE SECTION.
77 CH PIC A VALUE "Y".
PROCEDURE DIVISION.
MAIN-PARA.
OPEN OUTPUT STU1-FILE.
PERFORM ACCEPT-PARA UNTIL CH = "N".
PERFORM CLOSE-PARA.
STOP RUN.
ACCEPT-PARA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 10) "ENTER SNO: ".
ACCEPT SNO.
DISPLAY (3, 10) "ENTER NAME: ".
ACCEPT SNAME.
DISPLAY (4, 10) "ENTER MARKS: ".
ACCEPT SMARKS.
37

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
WRITE STU-REC.
DISPLAY (20, 10) "DO U WANT TO ENTER ANOTHER RECORD".
ACCEPT (20, 55) CH.
CLOSE-PARA.
CLOSE STU1-FILE.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SORTING.COB;
E:\COBOL\COBOL>RUNCOB SORTING
ENTER SNO:40
ENTER SNAME:NANI
ENTER MARKS:500
DO YOU WANT TO ENTER ANOTHER RECORD:Y
ENTER SNO:20
ENTER SNAME:SITA
ENTER MARKS:550
DO YOU WANT TO ENTER ANOTHER RECORD:Y
ENTER SNO:1
ENTER SNAME:SUDHEER
ENTER MARKS:450
DO YOU WANT TO ENTER ANOTHER RECORD:N

38

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:6.1

DATE: 24/4/2013

Aim:-TO PERFORM A SORT VERB.


IDENTIFICATION DIVISION.
PROGRAM-ID. SORT.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT STU-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT WORK-FILE ASSIGN TO DISK.
DATA DIVISION.
FILE SECTION.
FD STU-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT.DAT"
DATA RECORD IS STU-REC.
01 STU-REC.
02 SNO PIC 999.
02 SNAME PIC X(10).
02 SMARKS PIC 999.
FD OUT-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "OUT.DAT"
DATA RECORD IS OUT-REC.
01 OUT-REC.
02 OSNO PIC 999.
02 OSNAME PIC X(10).
02 OSMARKS PIC 999.
SD WORK-FILE
DATA RECORD IS WORK-REC.
01 WORK-REC.
02 WSNO PIC 999.
02 WSNAME PIC X(10).
02 WSMARKS PIC 999.
PROCEDURE DIVISION.
MAIN-PARA.
SORT WORK-FILE ON ASCENDING KEY WSNO
39

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
USING STU-FILE GIVING OUT-FILE.
STOP RUN.

/**********OUTPUT ***********/
PERFORM SORT VERB
SNO
1
21
40

SNAME
SUDHEER
SITA
NANI

MARKS
450
550
500

40

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:6.1

DATE: 24/4/2013

Aim:- TO PERFORM CREATION OF SEQUENTIAL FILE1


IDENTIFICATION DIVISION.
PROGRAM-ID. CSEQ.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT STU1-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD STU1-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT1.DAT".
01 STU1-REC.
02 SNO PIC 9(3).
02 SNAME PIC X(10).
02 SMARKS PIC 9(3).
WORKING-STORAGE SECTION.
77 CH PIC A VALUE "Y".
PROCEDURE DIVISION.
MAIN-PARA.
OPEN OUTPUT STU1-FILE.
PERFORM ACCEPT-PARA UNTIL CH = "N".
PERFORM CLOSE-PARA.
STOP RUN.
ACCEPT-PARA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 10) "ENTER SNO: ".
ACCEPT SNO.
DISPLAY (3, 10) "ENTER NAME: ".
ACCEPT SNAME.
DISPLAY (4, 10) "ENTER MARKS: ".
ACCEPT SMARKS.
WRITE STU-REC.
DISPLAY (20, 10) "DO U WANT TO ENTER ANOTHER RECORD".
ACCEPT (20, 55) CH.
CLOSE-PARA.
CLOSE STU1-FILE.

41

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SEQ.COB;
E:\COBOL\COBOL>RUNCOB SEQ
ENTER SNO:10
ENTER SNAME:KALYANI
ENTER MARKS:450
DO YOU WANT TO ENTER ANOTHER RECORD:Y
ENTER SNO:7
ENTER SNAME:HEMANTH
ENTER MARKS:490
DO YOU WANT TO ENTER ANOTHER RECORD:N

42

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
EXPEREMENT NO:6.1

DATE: 24/4/2013

Aim:- TO PERFORM CREATION OF SEQUENTIAL FILE2.


IDENTIFICATION DIVISION.
PROGRAM-ID. CSEQ.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT STU2-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD STU2-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT2.DAT".
01 STU2-REC.
02 SNO PIC 9(3).
02 SNAME PIC X(10).
02 SMARKS PIC 9(3).
WORKING-STORAGE SECTION.
77 CH PIC A VALUE "Y".
PROCEDURE DIVISION.
MAIN-PARA.
OPEN OUTPUT STU-FILE.
PERFORM ACCEPT-PARA UNTIL CH = "N".
PERFORM CLOSE-PARA.
STOP RUN.
ACCEPT-PARA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 10) "ENTER SNO: ".
ACCEPT SNO.
DISPLAY (3, 10) "ENTER NAME: ".
ACCEPT SNAME.
DISPLAY (4, 10) "ENTER MARKS: ".
ACCEPT SMARKS.
WRITE STU2-REC.
DISPLAY (20, 10) "DO U WANT TO ENTER ANOTHER RECORD".
ACCEPT (20, 55) CH.
CLOSE-PARA.
CLOSE STU2-FILE.

43

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SEQ2.COB;
E:\COBOL\COBOL>RUNCOB SEQ2
ENTER SNO:6
ENTER SNAME:BASHA
ENTER MARKS:500
DO YOU WANT TO ENTER ANOTHER RECORD:Y
ENTER SNO:24
ENTER SNAME:RAFI
ENTER MARKS:550
DO YOU WANT TO ENTER ANOTHER RECORD:N

EXPEREMENT NO:6.1

DATE: 24/4/2013

Aim:- TO PERFORM A PROGRAM TO ILLUSTRATE SORT VERB 1.


44

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
IDENTIFICATION DIVISION.
PROGRAM-ID. SORT.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT STU-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT WORK-FILE ASSIGN TO DISK.
DATA DIVISION.
FILE SECTION.
FD STU-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT1.DAT"
DATA RECORD IS STU-REC.
01 STU-REC.
02 SNO PIC 999.
02 SNAME PIC X(10).
02 SMARKS PIC 999.
FD OUT-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "OUT.DAT"
DATA RECORD IS OUT-REC.
01 OUT-REC.
02 OSNO PIC 999.
02 OSNAME PIC X(10).
02 OSMARKS PIC 999.
SD WORK-FILE
DATA RECORD IS WORK-REC.
01 WORK-REC.
02 WSNO PIC 999.
02 WSNAME PIC X(10).
02 WSMARKS PIC 999.
PROCEDURE DIVISION.
MAIN-PARA.
SORT WORK-FILE ON ASCENDING KEY WSNO
USING STU-FILE GIVING OUT-FILE.
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SORT.COB;
45

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
E:\COBOL\COBOL>RUNCOB SORT
THE STUDENT.DAT
SNO:10
SNAME:JANI
MARKS:450
SNO:40
SNAME:VASU
MARKS:490

SNO
10
40

EXPEREMENT NO:6.1

SNAME
JANI
VASU

MARKS
450
490

DATE: 24/4/201

Aim:- TO PERFORM A PROGRAM TO ILLUSTRATE SORT VERB 2


IDENTIFICATION DIVISION.
PROGRAM-ID. SORT.
46

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT STU-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT WORK-FILE ASSIGN TO DISK.
DATA DIVISION.
FILE SECTION.
FD STU-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT2.DAT"
DATA RECORD IS STU-REC.
01 STU-REC.
02 SNO PIC 999.
02 SNAME PIC X(10).
02 SMARKS PIC 999.
FD OUT-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "OUT.DAT"
DATA RECORD IS OUT-REC.
01 OUT-REC.
02 OSNO PIC 999.
02 OSNAME PIC X(10).
02 OSMARKS PIC 999.
SD WORK-FILE
DATA RECORD IS WORK-REC.
01 WORK-REC.
02 WSNO PIC 999.
02 WSNAME PIC X(10).
02 WSMARKS PIC 999.
PROCEDURE DIVISION.
MAIN-PARA.
SORT WORK-FILE ON ASCENDING KEY WSNO
USING STU-FILE GIVING OUT-FILE.
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SORT.COB;
E:\COBOL\COBOL>RUNCOB SORT

47

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
THE STUDENT2.DAT
SNO:29
SNAME:NARESH
MARKS:500
SNO:12
SNAME:GOPI
MARKS:550

SNO
12
29

SNAME
GOPI
NARESH

EXPEREMENT NO:6.2

MARKS
550
500

DATE:4/5/2013

Aim:- TO PERFORM A PROGRAM TO ILLUSTRATE MERGE VERB.


IDENTIFICATION DIVISION.
PROGRAM-ID. MERGE.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
48

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
SELECT STU1-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT STU2-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT WORK-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT OUT-FILE ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD STU1-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT.DAT".
01 STU1-REC.
02 SNO1 PIC 9(3).
02 SNAME1 PIC X(10).
02 SMARKS1 PIC 9(3).
FD STU2-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "STUDENT2.DAT".
01 STU2-REC.
02 SNO2 PIC 9(3).
02 SNAME2 PIC X(10).
02 SMARKS2 PIC 999.
FD OUT-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "OUT-DAT".
01 OUT-REC.
02 OSNO PIC 9(3).
02 OSNAME PIC X(10).
02 OSMARKS PIC 9(3).
SD WORK-FILE.
01 WORK-REC.
02 WSNO PIC 9(3).
02 WSNAME PIC X(10).

02 WSMARKS PIC 9(3).


WORKING-STORAGE SECTION.
77 EOF PIC X VALUE "N".
01 HEAD1.
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(3) VALUE "SNO".
05 FILLER PIC X(5) VALUE SPACES.
05 FILLER PIC X(5) VALUE "NAME".
05 FILLER PIC X(7) VALUE SPACES.
05 FILLER PIC X(6) VALUE "MARKS".
05 FILLER PIC X(50) VALUE SPACES.
49

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
05 FILLER PIC X(30) VALUE ALL "-".
01 HEAD2.
05 FILLER PIC X(5) VALUE SPACES.
05 DSNO PIC Z(3).
05 FILLER PIC X(5) VALUE SPACES.
05 DSNAME PIC A(10).
05 FILLER PIC X(5) VALUE SPACES.
05 DSMARKS PIC Z(3).
05 FILLER PIC X(5) VALUE SPACES.
PROCEDURE DIVISION.
MAIN-PARA.
MERGE WORK-FILE ON ASCENDING KEY WSNO
USING STU1-FILE, STU2-FILE GIVING OUT-FILE.
OPEN I-O OUT-FILE.
PERFORM READ-PARA UNTIL EOF = "Y".
CLOSE OUT-FILE.
STOP RUN.
READ-PARA.
READ OUT-FILE AT END MOVE "Y" TO EOF.
IF EOF NOT= "Y"
PERFORM DISP-PARA.
DISP-PARA.
DISPLAY HEAD1.
MOVE OSNO TO DSNO.
MOVE OSNAME TO DSNAME.
MOVE OSMARKS TO DSMARKS.
DISPLAY HEAD2.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL MERGE.COB;
E:\COBOL\COBOL>RUNCOB MERGE
SNO
06
10
24

SNAME
BASHA
JANI
RAFI

MARKS
490
450
550
50

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
40

VASU

EXPEREMENT NO:7.1

500

DATE:18/5/2013

7) EXAMPLE PROGRAMS THAT HOW TO PROCESS INDEXED AND


RELATIVE FILES.

i) Aim:- PRGRAM THAT CONVERTS SEQUENTIAL DATA TO INDEX DATA


FIELD.
* Creates a sequential file for an indexed file .
IDENTIFICATION DIVISION.
PROGRAM-ID. Seq2Index.
AUTHOR.
ENVIRONMENT DIVISION.
51

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SeqVideoFile ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD SeqVideoFile
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "SEQVIDEO.DAT".
01 SEQVIR.
88 EndOfFile VALUE HIGH-VALUES.
02 SeqVideoCode
PIC 9(5).
02 SeqVideoTitle
PIC X(40).
02 SeqVideoSupplierCode PIC 99.
WORKING-STORAGE SECTION.
01 VideoStatus
PIC X(2).
01 EOF
PIC X VALUE IS "Y".
PROCEDURE DIVISION.
Begin.
OPEN OUTPUT SeqVideoFile.
PERFORM ACCESS-PARA UNTIL EOF = "N".
CLOSE SeqVideoFile.
STOP RUN.
ACCESS-PARA.
DISPLAY ( 1 1) ERASE.
DISPLAY (3 5) "ENTER SeqVideoCode :".
ACCEPT (3 40) SeqVideoCode .
DISPLAY (4 5) "ENTER SeqVideoTitle :".
ACCEPT (4 40) SeqVideoTitle .
DISPLAY (5 5) "ENTER SeqVideoSupplierCode :".
ACCEPT (5 40) SeqVideoSupplierCode .
WRITE SEQVIR.
DISPLAY (6 5) "DO U WANT TO CONTINUE (Y/N)".
ACCEPT (6 40) EOF.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL MERGE.COB;
E:\COBOL\COBOL>RUNCOB MERGE
ENTER SEQ VIDEO CODE:7495
ENTER SEQ VIDEO TITLE: HANUMAN
ENTER SEQ VIDEO SUPPLIER CODE:99
DO YOU WANT TO ENTER ANOTHER RECORD:Y

52

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
ENTER SEQ VIDEO CODE:9495
ENTER SEQ VIDEO TITLE:MAHA BARATH
ENTER SEQ VIDEO SUPPLIER CODE:111
DO YOU WANT TO ENTER ANOTHER RECORD:N

EXPEREMENT NO:7.2

DATE: 18/5/2013

* Creates an indexed file from a sequential file.


IDENTIFICATION DIVISION.
PROGRAM-ID. Seq2Index.
AUTHOR.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT VideoFile ASSIGN TO DISK
ORGANIZATION IS INDEXED
ACCESS MODE IS RANDOM
RECORD KEY IS VideoCode
53

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
ALTERNATE RECORD KEY IS VideoTitle
WITH DUPLICATES
FILE STATUS IS VS.
SELECT SeqVideoFile ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD VideoFile
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "IDXVIDEO.DAT".
01 ViR.
02 VideoCode
PIC 9(5).
02 VideoTitle
PIC X(40).
02 VideoSupplierCode
PIC 99.
FD SeqVideoFile
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "SEQVIDEO.DAT".
01 SEQVIR.
88 EndOfFile VALUE HIGH-VALUES.
02 SeqVideoCode
PIC 9(5).
02 SeqVideoTitle
PIC X(40).
02 SeqVideoSupplierCode PIC 99.
WORKING-STORAGE SECTION.
01 VS
PIC X(2).
01 EOF
PIC X VALUE IS "N".
PROCEDURE DIVISION.
Begin.
OPEN INPUT SeqVideoFile.

OPEN OUTPUT VideoFile.


READ SeqVideoFile AT END MOVE "Y" TO EOF.
PERFORM COPY-PARA UNTIL EOF = "Y".
CLOSE VideoFile, SeqVideoFile.
STOP RUN.
COPY-PARA.
WRITE ViR FROM SEQVIR .
*
INVALID KEY DISPLAY "VSTATUS:" VS.
READ SeqVideoFile AT END MOVE "Y" TO EOF.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SEQF.COB;
54

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
E:\COBOL\COBOL>RUNCOB SEQF
VIEDEO.TXT
CODE
SUPPLIER CODE

TITLE

7495

HANUMAN

9495

MAHA BARATH

99
111

EXPEREMENT NO:7.2

DATE: 18/5/2013

ii)Aim:-PRGRAM THAT CONVERTS SEQUENTIA DATA TO RELATIVE DATA.


* Creates a sequential file for a Relative file
IDENTIFICATION DIVISION.
PROGRAM-ID. Seq2Rel.
AUTHOR.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SupplierFileSeq ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
55

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
FILE SECTION.
FD SupplierFileSeq
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "SEQSUPP.DAT".
01 SupplierRecordSeq.
88 EndOfFile
VALUE HIGH-VALUES.
02 SupplierCodeSeq
PIC 99.
02 SupplierNameSeq
PIC X(20).
02 SupplierAddressSeq
PIC X(50).
WORKING-STORAGE SECTION.
01 SupplierStatus
PIC X(2).
01 SupplierKey
PIC 99.
01 EOF
PIC X VALUE IS "Y".
PROCEDURE DIVISION.
Begin.
OPEN OUTPUT SupplierFileSeq.
PERFORM ACCESS-PARA UNTIL EOF = "N".
CLOSE SupplierFileSeq.
STOP RUN.
ACCESS-PARA.
DISPLAY (3 5) "ENTER SupplierCodeSeq".
ACCEPT (3 40) SupplierCodeSeq .
DISPLAY (4 5) "ENTER SupplierNameSeq ".
ACCEPT (4 40) SupplierNameSeq .
DISPLAY (5 5) "ENTER SupplierAddressSeq ".
ACCEPT (5 40) SupplierAddressSeq .
WRITE SupplierRecordSeq.
DISPLAY (6 5) "DO U WANT TO CONTINUE ANOTHER
RECORD(Y/N)".
ACCEPT EOF.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL SEQF.COB;
E:\COBOL\COBOL>RUNCOB SEQF
SEQ SUPP.TXT
ENTER SUPPLIER CODE SEQ:95
ENTER SUPPLIER NAME SEQ:YOUNG INDIAN
ENTER SUPPLIER ADDRESS SEQ:HYDERABAD
DO YOU WANT TO ENTER ANOTHER RECORD:Y
ENTER SUPPLIER CODE SEQ:50
56

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
ENTER SUPPLIER NAME SEQ:MAHATHMA
ENTER SUPPLIER ADDRESS SEQ:GUNTER
ENTER SUPPLIER DO YOU WANT TO ENTER ANOTHER RECORD:N

EXPEREMENT NO:7.2

DATE : 25/5/2013

* Creates a Relative file from a sequential file.


IDENTIFICATION DIVISION.
PROGRAM-ID. Seq2Rel.
AUTHOR.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SupplierFile ASSIGN TO DISK
ORGANIZATION IS RELATIVE
ACCESS MODE IS RANDOM
RELATIVE KEY IS SupplierKey
FILE STATUS IS Supplierstatus.
SELECT SupplierFileSeq ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
57

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
FD SupplierFile
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "RELSUPP.DAT".
01 SupplierRecord.
02 SupplierCode
PIC 99.
02 SupplierName
PIC X(20).
02 SupplierAddress
PIC X(50).
FD SupplierFileSeq
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "SEQSUPP.DAT".
01 SupplierRecordSeq.
88 EndOfFile
VALUE HIGH-VALUES.
02 SupplierCodeSeq
PIC 99.
02 SupplierNameSeq
PIC X(20).
02 SupplierAddressSeq
PIC X(50).
WORKING-STORAGE SECTION.
01 SupplierStatus
PIC X(2).
01 SupplierKey
PIC 99.
01 EOF
PIC X VALUE IS "N".
PROCEDURE DIVISION.
Begin.
OPEN OUTPUT SupplierFile.
OPEN INPUT SupplierFileSeq.
READ SupplierFileSeq AT END MOVE "Y" TO EOF.
PERFORM PROCESS-PARA UNTIL EOF= "Y".
CLOSE SupplierFile, SupplierFileSeq.
STOP RUN.
PROCESS-PARA.
MOVE SupplierCodeSeq TO SupplierKey.
MOVE SupplierRecordSeq TO SupplierRecord.
WRITE SupplierRecord INVALID KEY DISPLAY "Sup status=" Suppli
erStatus.
READ SupplierFileSeq AT END MOVE "Y" TO EOF.

/**********OUTPUT ***********/
CODE SEQ NAME SEQ ADDRESS SEQ.
95
50

YOUNG INDIAN
MAHATHMA

HYDERABAD
GUNTER

58

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:8

DATE:01/5/2013

8) EXPLAIN PROGRAMS THAT DEMONSTRATE CONTAINED ,AND


EXTERNAL,SUBPROGRAMS AND SAMPLE
PROGRAMS ILLUSTRATING LINKAGE SECTION

Aim:- TO PERFORM A PROGRAM BY USING CALLBY REFFERENCE


EXAMPLE
// COPY STATEMENT IS USING IN CALL PROGRAM
COPY SAMP.COB.
77 A PIC 9(3) VALUE IS 0.
77 B PIC 9(3) VALUE IS 0.
77 BIG PIC 9(3) VALUE IS 0.
PROCEDURE DIVISION.
MAIN-PARA.
DISPLAY (10, 10) "ENTER A VALUE".
ACCEPT (10, 30) A.
DISPLAY (12, 10) "ENTER B VALUE".
ACCEPT (12, 30) B.
CALL "SUB" USING A, B, BIG.
DISPLAY (15, 10) "THE BIGGEST VALUE IS " BIG.
59

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
STOP RUN.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL CALL.COB;
E:\COBOL\COBOL>RUNCOB CALL
ENTER A VALUE:5
ENTER B VALUE:10
THE BIGGEST VALUE IS:10
ENTER A VALUE:200
ENTER B VALUE:190
THE BIGGEST VALUE IS:200

EXPEREMENT NO:8

DATE: 01/5/2013

Aim:-

TO PERFORM A PROGRAM TO ILLUSTRATE FOR COPY


STATEMENTS.
IDENTIFICATION DIVISION.
PROGRAM-ID.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.

60

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:8

DATE: 01/5/2013

Aim:- TO PERFORM A PROGRAM TO CREATION OF SUB PROGRAM.


IDENTIFICATION DIVISION.
PROGRAM-ID. SUB.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
LINKAGE SECTION.
77 SUB-A PIC 9(3) VALUE IS 0.
77 SUB-B PIC 9(3) VALUE IS 0.
77 SUB-BIG PIC 9(3) VALUE IS 0.
PROCEDURE DIVISION USING SUB-A, SUB-B, SUB-BIG.
PARA1.
IF SUB-A>SUB-B
MOVE SUB-A TO SUB-BIG
ELSE
MOVE SUB-B TO SUB-BIG.
EXIT PROGRAM.

61

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL CREATION.COB;
E:\COBOL\COBOL>RUNCOB CREATION

EXPEREMENT NO:9.1

DATE:08/6/2013

9) EXAMPLE PROGRAMS USING THE COBOL REPORT WRITER.

i) Aim:-CREATION OF SALES FILE FOR REPORTS.


IDENTIFICATION DIVISION.
PROGRAM-ID. Report.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SalesFile ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD SalesFile
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "GBSALES.DAT".
01 SalesRecord.
88 EndOfFile VALUE HIGH-VALUES.
02 CityCode
PIC 9.
02 SalesPersonNum PIC 9.
02 ValueOfSale
PIC 9(4)V99.
WORKING-STORAGE SECTION.
77 CH PIC X.
PROCEDURE DIVISION.
62

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
MAIN-PARA.
OPEN OUTPUT SalesFile.
PERFORM ACCEPT-PARA UNTIL CH = "N".
PERFORM CLOSE-PARA.
STOP RUN.
ACCEPT-PARA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 10) "ENTER CityCode: ".
ACCEPT (2, 40) CityCode.
DISPLAY (3, 10) "ENTER SalesPersonNum: ".
ACCEPT (3, 40) SalesPersonNum.
DISPLAY (4, 10) "ENTER ValueOfSale: ".
ACCEPT (4, 40) ValueOfSale.
WRITE SalesRecord.
DISPLAY (20, 10) "DO U WANT TO ENTER ANOTHER RECORD".
ACCEPT (20, 55) CH.
CLOSE-PARA.
CLOSE SalesFile.

/**********OUTPUT ***********/
E:\COBOL\COBOL> COBOL REPORT.COB;
E:\COBOL\COBOL>RUNCOB REPORT
ENTER CITY CODE:10
ENTER SALES PERSON NUMBER:12345
ENTER VALUE OF SALE:3
DO YOU WANT TO ENTER ANOTHER RECORD:Y
ENTER CITY CODE:15
ENTER SALES PERSON NUMBER:1235456
ENTER VALUE OF SALE:2
DO YOU WANT TO ENTER ANOTHER RECORD:N

63

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:9.1

DATE: 08/6/2013

Aim:- TO PERFORM A REPORT CONTAINING ALL CONTROL BREAKS .


IDENTIFICATION DIVISION.
PROGRAM-ID. Report.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT SalesFile ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT PrintFile ASSIGN TO DISK.
DATA DIVISION.
FILE SECTION.
FD SalesFile
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "GBSALES.DAT".
01 SalesRecord.
88 EndOfFile VALUE HIGH-VALUES.
02 CityCode
PIC 9.
02 SalesPersonNum PIC 9.
02 ValueOfSale
PIC 9(4)V99.
FD PrintFile REPORT IS SalesReport.
WORKING-STORAGE SECTION.
77 EndOfFile PIC X VALUE IS "N".
01 NameTable.
02 TableValues.
03 FILLER PIC X(18) VALUE "Dublin Belfast ".
03 FILLER PIC X(18) VALUE "Cork
Galway ".
64

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
03 FILLER PIC X(18) VALUE "Sligo Waterford".
03 FILLER PIC X(9) VALUE "Limerick".
02 FILLER REDEFINES TableValues.
03 CityName
PIC X(9) OCCURS 7 TIMES.
REPORT SECTION.
RD SalesReport
CONTROLS ARE SalesPersonNum
PAGE LIMIT IS 66
HEADING 1
FIRST DETAIL 6
LAST DETAIL 42
FOOTING 52.
01 TYPE IS PAGE HEADING.
02 LINE NUMBER IS 1.
03 COLUMN NUMBER IS 12 PIC X(32) VALUE "An example CO
port Program".
02 LINE 2.

03 COLUMN 6
PIC X(17) VALUE "Bible Salesperson".
03 COLUMN 23 PIC X(26) VALUE " - Sales and Salary Report".
02 LINE 4.
03 COLUMN 2
PIC X(4) VALUE "City".
03 COLUMN 12
PIC X(11) VALUE "Salesperson".
03 COLUMN 28
PIC X(4) VALUE "Sale".
02 LINE 5.
03 COLUMN 2
PIC X(4) VALUE "Name".
03 COLUMN 13
PIC X(6) VALUE "Number".
03 COLUMN 28
PIC X(5) VALUE "Value".
01 DetailLine TYPE IS DETAIL.
02 LINE IS PLUS 1.
03 COLUMN 1 PIC X(9) SOURCE CityName(CityCode).
03 COLUMN 15
PIC 9 SOURCE SalesPersonNum.
03 COLUMN 25
PIC $$,$$$.99 SOURCE ValueOfSale.
01 SalesPersonGrp TYPE IS CONTROL FOOTING SalesPersonNum
NEXT GR
OUP PLUS 2.
02 LINE IS PLUS 1.
03 COLUMN 15
PIC X(21) VALUE "Sales for salesperson".
03 COLUMN 37
PIC 9 SOURCE SalesPersonNum.
03 COLUMN 43
PIC X VALUE "=".
03 SMS COLUMN 45 PIC $$$$$,$$$.99 SUM ValueOfSale.
01 TYPE IS PAGE FOOTING.
02 LINE IS 53.
03 COLUMN 1 PIC X(29) VALUE "Programmer-Michael Coughlan".
03 COLUMN 45
PIC X(6) VALUE "Page :".
03 COLUMN 52
PIC Z9 SOURCE PAGE-COUNTER.
PROCEDURE DIVISION.
65

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
Begin.
OPEN INPUT SalesFile.
OPEN OUTPUT PrintFile.
READ SalesFile AT END MOVE "Y" TO EndOfFile.
INITIATE SalesReport.
PERFORM PrintSalaryReport UNTIL EndOfFile.
TERMINATE SalesReport.
CLOSE SalesFile, PrintFile.
STOP RUN.
PrintSalaryReport.
GENERATE DetailLine.
READ SalesFile AT END MOVE "Y" TO EndOfFile.

/**********OUTPUT ***********/
AN EXAMPLE CO PORT PROGRAM.
BILD SALES PERSON
ANS SALLARY REPORT
CITY
SALES

SALES PERSON

NAME
VALUE

NUMBER

NANI
7000

SALES

00475
00475

8000
00475
9000
TOTAL:24,000
NAME
VALUE

NUMBER

SATHI
15,000

74579
74579

2,000
74579
17,000

66

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
TOTAL:32,000

EXPEREMENT NO:9.1

DATE:15/6/2013

ii)Aim:- TO PERFORM A SEQUENTIAL FILE CREATION FOR REPORTING.


IDENTIFICATION DIVISION.
PROGRAM-ID. CSEQ.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT Sales-File ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD SALES-FILE
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "SALES.DAT".
01 Sales-Rec.
88 End-Of-Sales-File VALUE HIGH-VALUES.
02 SF-Cust-Id
PIC X(5).
02 SF-Cust-Name
PIC X(20).
02 SF-Oil-Id.
03 FILLER
PIC X.
88 Essential-Oil VALUE "E".
03 SF-Oil-Name
PIC 99.
67

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
02 SF-Unit-Size
PIC 99.
02 SF-Units-Sold
PIC 999.
WORKING-STORAGE SECTION.
77 CH PIC A VALUE "Y".
PROCEDURE DIVISION.
MAIN-PARA.
OPEN OUTPUT SALES-FILE.
PERFORM ACCEPT-PARA UNTIL CH = "N".
PERFORM CLOSE-PARA.
STOP RUN.
ACCEPT-PARA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 10) "ENTER SF-Cust-Id : ".
ACCEPT SF-Cust-Id .
DISPLAY (3, 10) "ENTER SF-Cust-Name: ".
ACCEPT SF-Cust-Name.
DISPLAY (4, 10) "ENTER SF-Oil-Id: ".
ACCEPT SF-Oil-Id.
*
DISPLAY (5, 10) "ENTER Essential-Oil: ".
*
ACCEPT Essential-Oil.
DISPLAY (6, 10) "ENTER SF-Oil-Name: ".
ACCEPT SF-Oil-Name.
DISPLAY (7, 10) "ENTER SF-Unit-Size: ".
ACCEPT SF-Unit-Size.
DISPLAY (8, 10) "ENTER SF-Units-Sold: ".
ACCEPT SF-Units-Sold.
WRITE SALES-REC.
DISPLAY (20, 10) "DO U WANT TO ENTER ANOTHER RECORD".
ACCEPT (20, 55) CH.
CLOSE-PARA.
CLOSE SALES-FILE.
/********OUTPUT********/
ENTER SF-CUST-ID:AP745
ENTER SF-CUST-NAME:BAJI
ENTER SF-OIL-ID:745
ENTER ESSENTIAL-OIL:74
ENTER SF-OIL-NAME:PETROL
ENTER SF-UNIT-SIZE:50
ENTER-SF-UNITS-SOLID:60.75
DO YOU WANT TO ENTER ANOTHER RECORD:N

68

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA

EXPEREMENT NO:9.2

DATE: 15/6/2013

iii) Aim:- TO PERFORM REPORT CONTAINING ALL CONTROL BREAKS AND


USING DECLERATIVES TO CALCULATE THE SALE PERSON SALARY AND
COMMISSION.
IDENTIFICATION DIVISION.
PROGRAM-ID. I-O-SORT.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT Sales-File ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT Work-File ASSIGN TO DISK.
SELECT Summary-Report ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
SELECT Sorted-File ASSIGN TO DISK
ORGANIZATION IS LINE SEQUENTIAL.
DATA DIVISION.
FILE SECTION.
FD Sales-File
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "SALES.DAT".
01 Sales-Rec.
88 End-Of-Sales-File VALUE HIGH-VALUES.
02 SF-Cust-Id
PIC X(5).
02 SF-Cust-Name
PIC X(20).
69

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
02 SF-Oil-Id.
03 FILLER
PIC X.
88 Essential-Oil VALUE "E".
03 SF-Oil-Name
PIC 99.
02 SF-Unit-Size
PIC 99.
02 SF-Units-Sold
PIC 999.
SD Work-File.
*
LABEL RECORDS ARE STANDARD
*
VALUE OF FILE-ID IS "SORT.TMP".
01 Work-Rec.
88 End-Of-Work-File VALUE HIGH-VALUES.
02 WF-Cust-Id
PIC X(5).
02 WF-Cust-Name
PIC X(20).
02 WF-Oil-Id.
03 FILLER
PIC X.
03 WF-Oil-Num
PIC 99.
02 WF-Unit-Size
PIC 99.
02 WF-Units-Sold
PIC 999.
FD Summary-Report
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "AROMASALES.RPT".
01 Print-Line PIC X(64).
FD Sorted-File
LABEL RECORDS ARE STANDARD
VALUE OF FILE-ID IS "SORTSALE.DAT".
01 Sorted-Rec PIC X(33).
WORKING-STORAGE SECTION.
01 EOF PIC X VALUE "N".
01 Oils-Table.
02 Oil-Cost-Values.
03 FILLER
PIC X(40)
VALUE "0041003200450050002910250055003900650075".
03 FILLER
PIC X(40)
VALUE "0080004400500063006500550085004812500065".
03 FILLER
PIC X(40)
VALUE "0060005500670072006501250085006511150105".
02 FILLER REDEFINES Oil-Cost-VALUES.
03 OIL-COST
PIC 99V99 OCCURS 30 TIMES.
01 Report-Heading-Line
PIC X(44)
VALUE "
AROMAMORA SUMMARY SALES REPORT".
01 Report-Heading-Underline.
02 FILLER
PIC X(13) VALUE SPACES.
02 FILLER
PIC X(32) VALUE ALL "-".
01 Topic-Heading-Line.
02 FILLER PIC BX(13) VALUE " CUSTOMER NAME".
02 FILLER
PIC X(8) VALUE SPACES.
02 FILLER
PIC X(10) VALUE "CUST-ID ".
02 FILLER
PIC X(8) VALUE "SALES ".
70

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
02 FILLER
PIC X(11) VALUE "QTY SOLD ".
02 FILLER
PIC X(11) VALUE "SALES VALUE".
01 Cust-Sales-Line.
02 Prn-Cust-Name
PIC X(20).
02 Prn-Cust-Id
PIC BBB9(5).
02 Prn-Cust-Sales
PIC BBBBBZZ9.
02 Prn-Qty-Sold
PIC BBBBBZZ,ZZ9.
02 Prn-Sales-Value
PIC BBBB$$$,$$9.99.
01 Total-Sales-Line.
02 FILLER
PIC X(33) VALUE SPACES.
02 FILLER PIC X(19) VALUE "TOTAL SALES
:".
02 Prn-Total-Sales
PIC BBBBBBZZ,ZZ9.
01 Total-Qty-Sold-Line.
02 FILLER
PIC X(33) VALUE SPACES.
02 FILLER PIC X(19) VALUE "TOTAL QTY SOLD :".
02 Prn-Total-Qty-Sold
PIC BBBBBZZZ,ZZ9.
01 Total-Sales-Value-Line.

02 FILLER
PIC X(33) VALUE SPACES.
02 FILLER PIC X(19) VALUE "TOTAL SALES VALUE :".
02 Prn-Total-Sales-Value PIC B$$$$,$$9.99.
01 Cust-Totals.
02 Cust-Sales
PIC 999.
02 Cust-Qty-Sold
PIC 9(5).
02 Cust-Sales-Value
PIC 9(5)V99.
01 Final-Totals.
02 Total-Sales
PIC 9(5) VALUE ZEROS.
02 Total-Qty-Sold
PIC 9(6) VALUE ZEROS.
02 Total-Sales-Value
PIC 9(6)V99 VALUE ZEROS.
01 Temp-Variables.
02 Sale-Qty-Sold
PIC 99999.
02 Value-Of-Sale
PIC 999999V99.
02 Prev-Cust-Id
PIC X(5).
PROCEDURE DIVISION.
Produce-Summary-Report.
SORT Work-File ON ASCENDING KEY WF-Cust-ID INPUT PROCEDURE
I
-

S Select-Ess-Oil OUTPUT PROCEDURE IS Print-Summary-Report.


STOP RUN.
Select-Ess-Oil.
OPEN INPUT Sales-File.
READ Sales-File AT END MOVE "Y" TO EOF.
PERFORM SELECT-PARA UNTIL EOF = "Y".
CLOSE Sales-File.
SELECT-PARA.
IF Essential-Oil
RELEASE Work-Rec FROM Sales-Rec .
71

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
READ Sales-File AT END MOVE "Y" TO EOF.
Print-Summary-Report.
OPEN OUTPUT Summary-Report.
OPEN OUTPUT Sorted-File.
WRITE Print-Line FROM Report-Heading-Line.
*
AFTER ADVANCING 1 LINE.
WRITE Print-Line FROM Report-Heading-Underline.
*
AFTER ADVANCING 1 LINE.
WRITE Print-Line FROM Topic-Heading-Line.
*
AFTER ADVANCING 3 LINES.
RETURN Work-File AT END MOVE "Y" TO EOF.
PERFORM Print-Customer-Lines UNTIL EOF = "Y".
MOVE Total-Sales TO Prn-Total-Sales.
WRITE Print-Line FROM Total-Sales-Line.
*
AFTER ADVANCING 3 LINES.
MOVE Total-Qty-Sold TO Prn-Total-Qty-Sold.
WRITE Print-Line FROM Total-Qty-Sold-Line.
AFTER ADVANCING 2 LINES.
MOVE Total-Sales-Value TO Prn-Total-Sales-Value.
WRITE Print-Line FROM Total-Sales-Value-Line.
*
AFTER ADVANCING 2 LINES.
CLOSE Summary-Report, Sorted-File.
Print-Customer-Lines.
MOVE ZEROS TO Cust-Totals.
MOVE WF-Cust-Id TO Prn-Cust-Id, Prev-Cust-Id.
MOVE WF-Cust-Name TO Prn-Cust-Name.
PERFORM OUT-PARA UNTIL WF-Cust-Id NOT = Prev-Cust-Id.
MOVE Cust-Sales TO Prn-Cust-Sales.
MOVE Cust-Qty-Sold TO Prn-Qty-Sold.
MOVE Cust-Sales-Value TO Prn-Sales-Value.
WRITE Print-Line FROM Cust-Sales-Line.
*
AFTER ADVANCING 2 LINES.
OUT-PARA.
WRITE Sorted-Rec FROM Work-Rec.
ADD 1 TO Cust-Sales, Total-Sales.
COMPUTE Sale-Qty-Sold = WF-Unit-Size * WF-Units-Sold.
ADD Sale-Qty-Sold TO Cust-Qty-Sold, Total-Qty-Sold.
COMPUTE Value-Of-Sale = Sale-Qty-Sold * Oil-Cost(WF-Oil-Num).
ADD Value-Of-Sale TO Cust-Sales-Value, Total-Sales-Value.
RETURN Work-File AT END MOVE "Y" TO EOF.
*

/*********OUTPU *********/
AROMAMORA SUMMARY SALES REPORTT
NAME

ID

SALES

QTY-

SALES

TOTAL

NET
72

E9: CHIRALA ENGINEERING COLLEGE , CHIRALA


DEPARTMENT OF MCA
MANI

AP745
AP745

70
50

SOLD
40
50

RAGU

AP794
AP794

100
1000

40
700

VALUE
7,000
10,000

SALE
7,000
10,000

7,000
49,000

7,000
49,000

TOTAL

17,000

56,000
73,000

73

Вам также может понравиться