Calumet College of St.
Joseph
SYLLABUS FOR COBOL
PROGRAMMING I
Term: Spring, 2001-2002
(012) January
7 April 20, 2002
Course Number: CIS
320 Directed Study
Instructor: Br. Jim Ballmann C.PP.S.
Office Phone: 219-473-4365
E-mail: jballmann@ccsj.edu
Office Hours: Monday Friday
8:00 a.m 4:00 p.m.
Instructor Background:
1969 Professed as a Brother for the
Missionaries of the Precious Blood
1972 BA in Philosophy, St. Josephs College
1988 BS in Computer Information Systems, Calumet
College of St. Joseph
1994 MS in Education, Purdue University Calumet
Course Time: Thursday, 7:00 10:00p
This
course provides the student with an in-depth study of computer theory and
structured programming with respect to business applications. It will cover COBOL language syntax, data
and file structures, report generation, control break logic, table processing,
and sequential file creation and updating.
CIS
125, 255
Laboratory
Fee: See current fee schedule.
Learning Outcomes/Competencies:
Students in this course will:
·
Edit,
compile, & run COBOL programs using Micro
Focus Net Express
·
Convert
flowchart & pseudocode into COBOL syntax
·
Design
reports using a form
·
Code
input data files & output report files in the DATA DIVISION
·
Design
& code COBOL programs using a structured, top-down modular approach
·
Process
an input data file & produce an output report
·
Code
a program to produce a report using control break logic
·
Set
up & access a single-level table
Textbooks:
Structured COBOL Programming, Stern & Stern
The following are bundled with the textbook:
Micro Focus Net Express 3.0 Compiler & Manual
Getting Started With Micro Focus Net Express 3.0 University Edition
Learning Strategies: Interaction, Projects,
Collaborative Learning
Assessment:
Exams
(Midterm, Final) 60
% of grade
Quizzes 20 %
of grade
Programming
assignments 20 % of grade
Quizzes 20% 120 points
Programming Assignments 20% 100 points
Exam #1 10%
50 points
Exam #2 10%
50 points
Final Exam 40% 200 points
---------------------------------------------------------------------------
Total 100% 520 points
Grading Scale:
A = 96 - 100% 480 - 500 points
A- = 92 - 95% 460 - 479 points
B+ = 89 - 91% 445 - 459 points
B = 86 - 88% 430 - 444 points
B- = 83 - 85% 415 - 429 points
C+ = 80 - 82% 400 - 414 points
C = 77 - 79% 385 - 399 points
C- = 74 - 76% 370 - 384 points
D+ = 71 - 73% 355 - 369 points
D = 68 - 70% 340 - 354 points
D- = 65 - 67% 325 - 339 points
F = 00 - 64% 000 - 324 points
Class Policy on Attendance:
Meetings will be arranged
with the instructor on an as-needed basis to review homework, answer any
questions, and take quizzes and exams.
Exam weeks are scheduled in the meeting dates.
Course Outline:
#1 Chapter 1: Introduction to Structured
Program Design in COBOL
Read pages 1 31
Programming Assignment #1
Quiz #1
#2 Chapter 2: Identification &
Environment Divisions
Read
pages 35 54
Written
Assignment #2
Quiz
#2
#3 Chapter 3: Data Division
Read
pages 58 95
Written
Assignment #3
Quiz
#3
#4 Chapter 4: Coding Complete COBOL Programs:
Procedure Division
Read
pages 100 - 123
Written
Assignment #4
Programming
Assignment #2
Quiz #4
#5 Chapter 5: Designing & Debugging Batch
& Interactive COBOL Programs
Read
pages 132 182
Written
Assignment #5
Quiz
#5
#6 Chapter 6: Moving Data, Printing
Information, & Displaying Output Interactively
Read
pages 188 244
Written
Assignment #6
Quiz
#6
#7 Chapter 7: Computing in COBOL: Arithmetic
Verbs & Intrinsic Functions
Read
pages 250 286
Written
Assignment #7
Programming
Assignment #3
Quiz #7
#8 Chapter 8: Decision Making Using IF &
EVALUATE Statements
Read
pages 291 326
Written
Assignment #8
Programming
Assignment #4
Quiz
#8
#9 Chapter 9: Iteration: Beyond The Basic
PERFORM
Read
pages 335 - 364
Written
Assignment #9
Quiz #9
#10 Chapter 10: Control Break Processing
Read pages 374
416
Written
Assignment #10
Programming
Assignment #5
Quiz #10
#11 Chapter 11: Data Validation
Read
pages 422 450
Written
Assignment #11
Quiz #11
#12 Chapter 12: Array Processing & Table
Handling
Read
pages 456 505
Written
Assignment #12
Programming
Assignment #6
Quiz #12
Class Participation: Meetings are set up so that the student may discuss
any problems with the reading, written, or programming assignments.
Quizzes:
A quiz will be given for each chapter. Each quiz consists of five multiple-choice questions and each question is worth two points. Quizzes total 120 points, each quiz is worth ten points and there are twelve quizzes. Only 100 points from quizzes are necessary for an A, so two quizzes may be skipped or taken for extra credit.
Written Assignments:
Written assignments will be assigned for each chapter. Written assignments should be completed to help review the chapter and prepare for the quizzes and exams.
#1 Page
31: True-False Questions, 1 7
Page
32: General Questions, 1 7
#2 Page
54: True-False Questions, 1 12
Page
55: General Questions, 1 10
#3 Page
95: True-False Questions, 1 10
Page
95: General Questions, 1 9
#4 Page
123: True-False Questions, 1 10
Page
123: General Questions, 1 6
#5 Page
182: Fill in the Blanks, 1 13
Page
183: General Questions, 1 2
#6 Page
245: True-False Questions, 1 10
Page
245: General Questions, 1 25
#7 Page
286: True-False Questions, 1 10
Page
286: General Questions, 1 10, 14 - 20
#8 Page
326: True-False Questions, 1 10
Page
327: General Questions, 1 14, 17 - 20
#9 Page
364: True-False Questions, 1 10
Page
364: General Questions, 1 7
#10 Page
416: True-False Questions, 1 10
Page
416: General Questions, 1 4
#11 Page
450: True-False Questions, 1 10
Page
450: General Questions, 1 5
#12 Page
529: True-False Questions, 1 5
Page 529: General Questions, 1 3
Programming Assignments:
Programming assignments are
composed of three parts to be submitted on paper:
1)
Programming
source code
2)
Report
(unless the program interactive with screen display)
3)
Flowchart
or pseudocode used to design the logic for the program
If the program is
interactive, it must also be run online to display input & output. Programming assignments have the following
point values:
#1 05 points
#2 15 points
#3 20 points
#4 20 points
#5 20 points
#6 20 points
Calumet Video sells and
rents videos. When they make a
transaction, Calumet Video collects the information listed in the following
table. It is stored in an ASCII data
file, customer.dat. To run the business they need several
reports and other information, some from the data file and some entered from
the keyboard. In this class you will
write programs to process the information that they need to run the company.
Field |
Size |
Type of Data |
Location in Record |
|
Id |
3 |
Alphanumeric |
01 - 03 |
|
Name |
15 |
Alphanumeric |
04 - 18 |
|
Address |
15 |
Alphanumeric |
19 - 33 |
|
City |
10 |
Alphanumeric |
34 - 43 |
|
State |
2 |
Alphanumeric |
44 - 45 |
|
Zip |
5 |
Numeric |
46 - 50 |
|
Type |
2 |
Alphanumeric |
51 - 52 |
|
|
|
CO = Comedy |
|
|
|
|
MY = Mystery |
|
|
|
|
RO = Romance |
|
|
|
|
SF = Science Fiction |
|
|
|
|
WE = Western |
|
|
Video |
15 |
Alphanumeric |
53 - 67 |
|
Transaction |
1 |
Numeric |
68 - 68 |
|
|
|
0 = Rent |
|
|
|
|
1 = Buy |
|
|
Date |
8 |
Numeric |
69 - 76 |
|
Amount |
4 |
Numeric, 2
decimal places |
77 - 80 |
#1 Calumet Video wants to know what videos and how many were rented or sold in the year 2000. I have written a program to produce the report that the company needs. The report is written for 80-column paper. This program is called asgn01.cbl.
·
Key
in program
·
Asterisks
(*) begin in column #7
·
Compile
and run the program
·
Report
is asgn01.rpt
·
You
do not need to turn in a flowchart or pseudocode with this assignment
#2 Calumet Video wants to send two mailings to customers who purchased or rented videos this past year. Write a program to print two labels for each customer. Calumet Video uses one-up labels, so the two labels for each customer will be one after the other. Labels are 40-columns wide.
·
Four
lines per label with id on line #1, name on line #2, address on line #3, and city,
state, and zip on line #4
·
Put
a blank line between labels
·
Set
up four records in the file section under the FD for report lines
·
There
is one record for each of the four label lines listed above
#3 Calumet Video plans to increase the price of videos by a percentage this next year. They want to compare old prices with new prices. Write a program to produce a report to list one line for each record read (which contains an amount). The report should be written for 80-column paper.
·
Design
the report
·
Decide
on the percentage increase and include it in the header line(s)
·
Header
line(s) must contain the report name, report date, page number, percentage
increase, and column headings
·
Detail
line for each record read must contain movie, transaction, date, old amount,
and new amount
·
Print
header line(s) on the top of each page
·
Use
the following logic for the transaction field:
IF cust-transaction
= 0
MOVE Rent TO rpt-transaction
ELSE
MOVE
Buy TO rpt-transaction
END-IF
#4 Calumet Video wants to stock the types of video that customers are interested in. Write an interactive program to develop a survey to accept the following data items from the keyboard: id, sex of respondent, and type of video (valid types are one of the five that are listed in TYPE in the customer data file).
·
There
is no input file
·
Use
only one file
·
Open
the file output
·
The
output record contains the three fields that are accepted from the keyboard
·
There
is no report
·
Set
up six counters in WORKING-STORAGE with a PIC 999 clause
·
One
counter is for total records entered and five counters for each of the TYPEs
(CO, MY, RO, SF, WE)
·
Use
three sets of DISPLAY & ACCEPT statements to prompt for the fields of data
and accept them from the keyboard, then write them to the record
·
After
writing the record, add 1 to the total count, and if conditions are met, add 1
to the appropriate type counter
·
Then
use DISPLAY & ACCEPT to see if another record is to be added
·
After
all the records have been entered, display on the screen the percentage of
responses for each of the five types
·
Use
the following formula for computing percentages:
COMPUTE identifier = counter / total-record-counter
* 100
·
Use
an identifier in WORKING-STORAGE with a PIC ZZ9.99 clause to display the
percentages
·
In
addition to handing in the source code and flowchart or pseudocode for this
program, demonstrate the program on-line
#5 Calumet Video wants to open a second outlet. Calumet Video needs a report to list rentals and sales by city. Write a program to produce a report to list total sales and total rentals by city. The report should be written for 80-column paper.
·
Customer
file is in order by city
·
Use
control-break processing
·
Include
a header with date, report name, and page number
·
On
the summary line list the city and the number of videos rented and sold
#6 Calumet Video wants to survey customers to list ten videos that they would like to rent or buy. Write an interactive program using PERFORM VARYING logic to accept 10 videos and store them in an array.
·
Clear
the screen
Add to DATA
DIVISION:
SCREEN SECTION.
01 SCREEN-1.
05 BLANK SCREEN.
Add to PROCEDURE
DIVISION:
DISPLAY SCREEN-1.
·
Display
the videos on the screen, one per line, using PERFORM
VARYING logic
·
Display
three blank lines
·
Display
on the screen the video stored in location #9
·
In
addition to handing in the source code and flowchart or pseudocode for this
program, demonstrate the program on-line
Center for Academic
Excellence:
Tutoring assistance is free to all students of Calumet
College of St. Joseph. Call the Center for Academic Excellence (CAE), to make
an appointment at 473-4287. The Center has experienced and well-trained tutors
in most subject areas to help students who are struggling in a course or who
are doing well and would like to do better. Regular weekly tutoring sessions
are likely to improve your grade.
Statement of Plagiarism:
If
an instructor or other Calumet College of St. Joseph personnel find that a
student has plagiarized or been involved in another form of academic
dishonesty, the instructor or other personnel may elect to bring the matter up
for judicial review. The maximum penalty for any form of academic dishonesty is
dismissal from the College. The procedures for judicial review are listed under
the section of CCSJ handbook that addresses student grievances.
Citation Guidelines:
Calumet
College of St. Joseph adheres to citation guidelines as prescribed by the
particular discipline (i.e., MLA, APA, Chicago Manual of Style or
Turabian.). All of these guidelines are
available in the Calumet College of St. Joseph library or bookstore.