Lab 7 – Arrays – Gradebook
(Due before class on April 25, 2007)

The purpose of this lab is to design a solution and implement it using object-oriented design and programming with arrays. The application is a system for managing the grade book for CPSC 1301.

Design and write a Java application that reads student information from a comma-separated values text file – grades.csv (see pg. 246-249). Each student record contains a student name (e.g. Jimi Hendrix), a 9-digit student ID (909123456), midterm and final exam scores (integer 0-100), seven assignment scores (integer 0-50), and fourteen quiz scores (integer 0-20). The different fields in the student record are separated by a comma (,) in the data file. For each student, compute the student’s total points and average (two decimal place), weighted total and average after dropping the lowest assignment and lowest quiz score.

Your program should allow the user to

1.     display a list of all students listing all of the information, or

2.  display a list of students’ names, IDs, and their total points and average

3.     display a list of students’ names, IDs, and their weighted total and average

4.     display the class averages for the two exams, total points, and average

You may use either System.in and System.out or a GUI.

NOTE: Follow the software development activities (software development life cycle) described in section 6.1. Use UML class diagrams to describe your classes.

NOTE: Use named constants for the number of assignments and number of quizzes to provide flexibility for use in other classes.

 Grades are determined using the following scale: