I’m working on a c# question and need support to help me learn.
Build a GradeProcessing application which reads in a text file containing student information as shown below (you will add more students and their data to the file, the file name could be
“StudentData.txt”). This is a comma separated file with the field order as: ID,FirstName,LastName,Test1,Test2,Major,UG or GRAD
Your program will have a GUI. From a menu item, you should be able to select the student data file via the “OpenFileDialog”, and be able to read it into a list of Students (List<Student> – List is a generic version of the ArrayList class) and display the data in a DataGridView.
You will provide another menu item that will process the grades for each student in the list and write the following information to file selected from the “SaveFileDialog”.
The grade will be computed as 0.4*test1 + 0.6*test2 for an undergraduate student and 0.5*test1 + 0.5*test2 for a graduate student.
Add a form to the project called “FormAddStudent” so that you can add the data for another student. This form will have five text boxes for the ID, first name, last name, test1, and test 2 fields. There will be a drop down for selecting the major (possible majors are CPSC, CPEG, ELEG and MATH). The major will be an enumeration in the Student class. There will be two radio buttons to select whether the student is UG or GRAD (also an enumeration in the Student class). There will be an “Add Student” button and “Cancel” button in the form. Provide another menu item that displays the FormAddStudent in a modal manner and collects the information about a new student. The new student is to be added to the existing list of students that was read from the text file earlier provided the student ID being added does not already exist in the list.
Provide another menu item to display the student grades (computed earlier and saved in a file) by reading them back from the grades file and showing them in a data grid view.