PRACTICE CSC203 FIRST COBOL EXAM
1) [10 pts] ARRANGE THE FOLLOWING STATEMENTS IN ORDER SO THAT THE COMPUTER CAN EXECUTE EACH ONE PROPERLY.
A) COMPUTE Y
= M + S + Q.
B) COMPUTE P
= (A + X) * 2 - X * 2.
C) MOVE L TO
X Z.
D) COMPUTE R
= Y - X * 3.
E) SUBTRACT X
FROM R GIVING L.
F) MOVE 15 TO
A X.
G) COMPUTE Z
= A + P.
H) ADD P A M
GIVING S.
I) MOVE S TO
Q.
J) SUBTRACT X
FROM Z GIVING M.
2) [10 pts] WHAT VALUES ARE IN THE ABOVE DATA NAMES AFTER THE LAST INSTRUCTION IS EXECUTED? (ASSUME LARGE ENOUGH NUMERIC PICTURES CLAUSES ASSOCIATED WITH THE DATA NAMES.)
3) [10 pts] WRITE A HEADER THAT, WITH THE APPROPRIATE MOVE AND WRITE STATEMENTS, WILL PRODUCE THE FOLLOWING LINE.
NAME
STUDENTS
NO. OF FAILURES
^
^
^
^
^
^
^
^
^
(COL 5)
(COL 51)
(COL 86)
4) [10 pts] WRITE ONE INPUT FILE DESCRIPTION FOR INPUT DATA HAVING THE FOLLOWING FORMAT: (....... THE CHOICE OF DATA NAMES IS YOURS.......)
FIELD
COLUMNS
SALARY
21-26 (DOLLARS & CENTS
WITH ASSUMED DECIMAL)
BONUS
31-36 (DOLLARS & CENTS
WITH ASSUMED DECIMAL)
NAME
61-90 (CONSISTS OF FIRST 61-70 & LAST NAME 71-90)
5) [10 pts] FILL IN: (IF THE MOVE IS INVALID, WRITE INVALID!)
SENDING
FIELD CONTENTS
RECEIVING FIELD CONTENTS
A) 9(6)
456789
9(5)
B) X(5)
HELLO
X(3)
C) 9(4)V99
472600
9(3)V99
D) 9(3)
006
ZZZ
E) 9(6)
004000
$ZZZZZ9
F) 9(3)V99
34750
$$$$.99
G) X(5)
AB4C2
9(5)
H) 9(4)V99
000020
$$,$$$.99
I) A(7)
SAMUELS
A(8)
J) 9(2)V9(2)
4316
999V9
6) [10 pts] Given the following:
PROCEDURE
DIVISION.
BEGIN.
PERFORM 010-PAR-A.
PERFORM 020-PAR-B 3 TIMES.
PERFORM 030-PAR-C UNTIL XX > 56.
STOP RUN.
010-PAR-A.
MOVE 4 TO XX YY.
020-PAR-B.
ADD 7 TO YY.
COMPUTE XX = YY - 6.
030-PAR-C.
DISPLAY YY.
COMPUTE YY = XX + 3.
ADD 14 TO XX.
What is the output from the above - i.e., what will be "displayed"?
7) [10 pts]
Write one COBOL statement for the following:
(*note -
EACH LETTER represents a data-name
(a+b)c
x =
-------
de
8) If a=2, b=3, c=4, d=5, and e=1, what value will be assigned to x?
9) [10 pts] Circle the correct statements:
a)
MOVE X TO 5.
b)
ADD A B C D E F G H GIVING Z.
c)
IF X = 5 STOP RUN.
d)
OPEN FILEONE FILETWO.
e)
PERFORM ROUTINE-A 5 TIMES
f)
COMPUTE X = A * B ROUNDED.
g)
PERFORM 200-LOPPER UNTIL THERE ARE-NO-MORE-RECORDS.
h)
CLOSE FINEONE TWOER.
i)
PERFORM START UNTIL SWITCH = 'YES'.
j)
DIVIDE X INTO Y GIVING Z REMAINDER Q.
10) [10 pts] a. What are the 4 DIVISIONS of a COBOL program?
sample Structured COBOL programs demonstrated in class?
d. How many times will paragraph 200-LOOPER be performed
due to this piece of code:
MOVE ZEROS TO COUNTER.
PERFORM 200-LOOPER UNTIL COUNTER = 5.
.
.
.
200-LOOPER.
ADD 1 TO COUNTER.