Documente Academic
Documente Profesional
Documente Cultură
For the first project this semester you will be writing a program to generate semester grade
reports similar to the ones given to LR students. The general form of such a report is:
Name
The output for each student should be very similar to the above, but there will be several
students to report on.
Input
Credit hours for courses will be integers, the GPA (grade point average) will be a float carried to
two decimal places. Courses will be designated by a three-character department and a three-
digit number, just as they are at LR. (e.g. CSC250)
Grades will be simply single upper case letters, A, B, C, D, or F. There will be no + or – grades.
The data file will be called proj1.in and will be made available in the assignments folder of
blackboard.
Output Details
The output should be sent to a file, one student per page. The reports should be formatted in
columns as shown above. The GPA should be displayed to two decimal places.
The name should be displayed in one of the following forms, depending on the value of the 0|1
flag on the line immediately following the middle name in the input file:
GPA Calculation
The GPA is calculated by dividing total quality points by total credit hours. The quality points are
determined by multiplying the number in the following table by the number of credit hours:
grade points
A 4
B 3
C 2
D 1
F 0
You should use at least two distinct Abstract Data Types in your program design, such as one for
the name of a student, one for information about a single course taken (course, hrs, and grade)
or one for a list of courses taken by a student. Each ADT should be a separate package, with
specification and body for each.
Documentation: you should include documentation for each of your ADTs as well as for the main
program. Include all algorithms in pseudocode and a description of why you chose the
algorithms and data structures you did.
Due Date
The (plain text) source code for your program and full documentation (in one of the following
formats: MSWord, plain text, RTF) must be uploaded to blackboard by midnight, Friday,
September 21.