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  
EMPLOYEE NUMBER             11-16
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?

                      b. In what section of the program would you put your Header and Title definition lines?

                      c. Why are there reads of the input file in TWO separate paragraphs in some of the 
                          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.