Question: Implement a simple grade management program. Grades are stored as real number grade points (4.0, 3.7, 3.3...0.0). Array elements that are occupied will contain a

Implement a simple grade management program. Grades are stored as real number grade points (4.0, 3.7, 3.3...0.0). Array elements that are occupied will contain a grade within this range. For example, this array would be assumed to contain 4 grades (values outside the valid range represent 'unoccupied' elements): 3.3, 4.0, 2.7, 0, -1, -1, -1... The program includes basic statistical generation (average) and visualization of the data (query for the highest and the lowest grade). There is no requirement for including user input of the grades but the program must include the ability to initialize grades (hard-coded or random). The program will employ a text-based menu-driven interface.

Technical details

The program consists of 3 classes:

  • Driver: starting execution point.

  • UserInterface: responsible for displaying all menus, getting user input and determining the appropriate course of action

  • Manager: stores the grades (1D array of double: maximum of 40 elements). While the user-interface class may be responsible for determining which option was selected by the user (e.g., display list, find highest grade etc.) only the manager class that can directly access or change the grade information. That's because the information (grades) is a property of the manager, the grade information is what the manager manages

  • Program Features:
    • Array has each element initialized to starting value outside the range of valid values (e.g., -1).
    • A main menu of program options is displayed: average grade, display grades, find highest, find lowest, random and fixed initialization of list, the ability to quit the program. (JT: To clarify I should have added an option to initialize the first 10 array elements as well).
    • Get user selection (of the options at the main menu).
    • Program runs until the user selects the option to quit the program (display menu, get user input, execute user selected option...this cycle repeats until the user quits).
    • Display the contents of the list (you only get credit for one version)
    • Basic version: displays all the grades in the list.
    • Advanced version: only displays list elements that contains a valid grade i.e., if the list only contains 10 grades then only the first 10 elements will be displayed. The ability to only display occupied elements should be determined by the actual number of occupied elements at run-time and not set to a hard-coded value.
    • Assign a fixed grade of 2.0 to all array elements. Previous values are overwritten.
    • Assign grades to the first 10 list element randomly. To make it simple randomly assigned grades can consist only of integer values ranging from zero to four. Previous values are overwritten.
    • Calculate and display the average grade.
    • Determine and display the highest grade in the list.
    • Determine and display the lowest grade in the list.
  • please answer in java need it asap

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!