continue from first question, Client class: The client program will allow entry of these data for several different student into an ArrayList and  then perform some analysis and queries. Your client class (program) will provide the user with a menu to perform the following operations.  You will also need to load the information of the students from a CSV file (student.csv) before  displaying the menu. You only need one ArrayList and one menu for this. For the csv file, your first  item can be U or G to differentiate whether the entry is creating a UndergraduateStudent object, or a  GraduateStudent object. You can then decide how you want other data to be listed in the csv file.  You should specify clearly in your documentation the data format of the CSV files used in this  assignment. 1. Quit (exit the program) 2. Add (to the ArrayList) all the marks information about an undergraduate or graduate student by  reading it from another CSV file. Your program will ask for the file name. 3. Given student number (ID), remove the specified student and relevant information from the  ArrayList. It is always good to ask the user to confirm again before removing the record. For  confirmation, output the student number (ID) and the name to the user. 4. Output all details currently held in the ArrayList. 5. Determine and display how many undergraduate students obtained an overall mark equal to or  above the average overall mark and how many obtained an overall mark below the average  overall mark. Note: You can only perform this task on undergraduate students only. 6. Given a student number (ID), report the grade information (using reportGrade) of the student  with that number. If the student is not found in the ArrayList, an appropriate error message is  to be displayed 7. Sort the ArrayList of the student objects into ascending order of the students’ numbers (IDs),  and output the sorted array - implement an appropriate sorting algorithm for this, and explain  why such algorithm is selected (in internal and external documentation). 8. Output the sorted ArrayList from (7) to a CSV file. If the ArrayList is not sorted, this option  cannot be selected. Remember to include the identification of whether the student is  undergraduate (U) or graduate (G) student. Note that the program will loop around until the user selects the first option (Quit). Set up a student ArrayList of N student objects, and test it with N = 10 (at least). You have to store your test data in a file so that your program can read them. You should use 5  undergraduate and 5 graduate students in your test. Consider all possible enrolment types in  your test

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

continue from first question,

Client class:
The client program will allow entry of these data for several different student into an ArrayList and 
then perform some analysis and queries.
Your client class (program) will provide the user with a menu to perform the following operations. 
You will also need to load the information of the students from a CSV file (student.csv) before 
displaying the menu. You only need one ArrayList and one menu for this. For the csv file, your first 
item can be U or G to differentiate whether the entry is creating a UndergraduateStudent object, or a 
GraduateStudent object. You can then decide how you want other data to be listed in the csv file. 
You should specify clearly in your documentation the data format of the CSV files used in this 
assignment.
1. Quit (exit the program)
2. Add (to the ArrayList) all the marks information about an undergraduate or graduate student by 
reading it from another CSV file. Your program will ask for the file name.
3. Given student number (ID), remove the specified student and relevant information from the 
ArrayList. It is always good to ask the user to confirm again before removing the record. For 
confirmation, output the student number (ID) and the name to the user.
4. Output all details currently held in the ArrayList.
5. Determine and display how many undergraduate students obtained an overall mark equal to or 
above the average overall mark and how many obtained an overall mark below the average 
overall mark. Note: You can only perform this task on undergraduate students only.

6. Given a student number (ID), report the grade information (using reportGrade) of the student 
with that number. If the student is not found in the ArrayList, an appropriate error message is 
to be displayed
7. Sort the ArrayList of the student objects into ascending order of the students’ numbers (IDs), 
and output the sorted array - implement an appropriate sorting algorithm for this, and explain 
why such algorithm is selected (in internal and external documentation).
8. Output the sorted ArrayList from (7) to a CSV file. If the ArrayList is not sorted, this option 
cannot be selected. Remember to include the identification of whether the student is 
undergraduate (U) or graduate (G) student.
Note that the program will loop around until the user selects the first option (Quit).
Set up a student ArrayList of N student objects, and test it with N = 10 (at least). You have to
store your test data in a file so that your program can read them. You should use 5 
undergraduate and 5 graduate students in your test. Consider all possible enrolment types in 
your test

Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps

Blurred answer
Knowledge Booster
Passing Array as Argument
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education