**Program in C++**

udent Picker Project In this project, you will be creating a program that will be used to pick students from a class. On startup, the program must read from a file called: “students.txt”. This file will have a list of student names with 1 name on each line including both the first and last name. The program will provide the user the following options: (S) how current list of available students (R)emove a student Randomly (P)ick a student r(E) set student list (G) roup students (Q)uit program Upon first execution, the current list of students must be set to all the students in the “students.txt” file. If the user selects R to remove a student, the user must be prompted for the student to remove and the student must no longer be available to be displayed, picked, or included in a group. If the user selects P to randomly pick a student, the randomly selected student is displayed and removed from the list of available students. If the user selects G to group users, the user is asked how big each group should be and groups with the given size are displayed. Each group must have randomly selected students and have the correct number of members (the last group may have less than selected # of members). If E is selected, the list of available students is reset to match the contents in the “students.txt” file. Note that the list of available students must persist across program invocations. In other words, if you initially start with 30 students in the “students.txt” file and 5 students are removed (either by the Ror Poperations), when the program is restarted, the same 25 students must be available. Your program can assume that the maximum number of students will be less than or equal to 50. Your program must use arrays to store student names (the purpose of this exercise is to become comfortable using arrays). You cannot use advanced data structures like dictionaries, vectors, or lists to store students. A sample project solution is available on canvas. Grading Rubric Points 10 10 10 Item List of available students is correctly displayed “Remove a student” removes the correct student from the list of available students “Randomly select a student” correctly displays a randomly selected student from the list of available students and that student is correctly removed from the available student list Group students correctly puts students into user specified sized groups Group members are randomly chosen. All available students are placed into exactly 1 group Reset operation correctly resets the available student list Available student list is correctly maintained after the program is restarted Program is well commented Function and variable names are well chosen Proper use of arrays Correct files are submitted and on time 10 10 Lily Anbarcioglu Natalie Bezruchkina Lionel Chang Kirby Chen Oscar Cruz Emilio Cunningham Richard Forrester Bruno Futino Sabino Gomez Michael Hirschowitz Thomas Jakle Joseph Jang Gurveer Jhajj ChanJoo (Julie) Kim Kimberly Martinez Aaron Neagle Alexander Neumann Trent Nielsen Darrel Nitereka Ivan Paredes Govardhini (Govi) Pusarla Stephanie Ritzer Miriam Rundell Qingran Shao Peter Strizhev Otto Thielicke Wenxin Xu Patrick Yancey Xiaofeng Zhou Show transcribed image text udent Picker Project In this project, you will be creating a program that will be used to pick students from a class. On startup, the program must read from a file called: “students.txt”. This file will have a list of student names with 1 name on each line including both the first and last name. The program will provide the user the following options: (S) how current list of available students (R)emove a student Randomly (P)ick a student r(E) set student list (G) roup students (Q)uit program Upon first execution, the current list of students must be set to all the students in the “students.txt” file. If the user selects R to remove a student, the user must be prompted for the student to remove and the student must no longer be available to be displayed, picked, or included in a group. If the user selects P to randomly pick a student, the randomly selected student is displayed and removed from the list of available students. If the user selects G to group users, the user is asked how big each group should be and groups with the given size are displayed. Each group must have randomly selected students and have the correct number of members (the last group may have less than selected # of members). If E is selected, the list of available students is reset to match the contents in the “students.txt” file. Note that the list of available students must persist across program invocations. In other words, if you initially start with 30 students in the “students.txt” file and 5 students are removed (either by the Ror Poperations), when the program is restarted, the same 25 students must be available. Your program can assume that the maximum number of students will be less than or equal to 50. Your program must use arrays to store student names (the purpose of this exercise is to become comfortable using arrays). You cannot use advanced data structures like dictionaries, vectors, or lists to store students. A sample project solution is available on canvas. Grading Rubric

Points 10 10 10 Item List of available students is correctly displayed “Remove a student” removes the correct student from the list of available students “Randomly select a student” correctly displays a randomly selected student from the list of available students and that student is correctly removed from the available student list Group students correctly puts students into user specified sized groups Group members are randomly chosen. All available students are placed into exactly 1 group Reset operation correctly resets the available student list Available student list is correctly maintained after the program is restarted Program is well commented Function and variable names are well chosen Proper use of arrays Correct files are submitted and on time 10 10

Lily Anbarcioglu Natalie Bezruchkina Lionel Chang Kirby Chen Oscar Cruz Emilio Cunningham Richard Forrester Bruno Futino Sabino Gomez Michael Hirschowitz Thomas Jakle Joseph Jang Gurveer Jhajj ChanJoo (Julie) Kim Kimberly Martinez Aaron Neagle Alexander Neumann Trent Nielsen Darrel Nitereka Ivan Paredes Govardhini (Govi) Pusarla Stephanie Ritzer Miriam Rundell Qingran Shao Peter Strizhev Otto Thielicke Wenxin Xu Patrick Yancey Xiaofeng Zhou

## Expert Answer

Answer to udent Picker Project In this project, you will be creating a program that will be used to pick students from a class. On…