At my university, my fellow students and I cannot apply practical subjects well... For example, when we are asked to do a software project, we cannot analyze its requirements to know the steps that must be followed to do so, and we cannot translate what we learned in theoretical subjects into practical application easily... How can I develop? My skills are in the practical aspect of programming...and what are the best ways to raise my skills in practical applications of computer skills in general? The project requirements were:
Computer Programming 2: Final Project
Make a C++ program to manage students records and grades. Every student record must have:
- id >> a variable of type: int.
- first_name >> a variable of type: string, this variable should contain letters only [shouldn’t contain any numbers and special characters], and the first letter should be capitalized.
- last_name >> a variable of type: string, this variable should contain letters only [shouldn’t contain any numbers and special characters], and the first letter should be capitalized.
- major >> a variable of type: string, this variable should contain one of the following values (“IT”, “IS”, “CS”, “CYS”) all letters should be capitalized.
- level >> a variable of type: int, should be from 1 to 4 only.
- marks[] >> an array of type: int, the content of each index in the array will represent the marks of one subject which will be between 0 – 100.
- size >> a const variable of type: int, should be 6 [ no need to ask the user ] this would be the size of the marks[] array.
- total_marks >> a variable of type: int, which is the sum of all the subjects in the marks[] array. This means that the number in this variable should be between 0 – 600.
- grade >> a variable of type: float, this variable contains the result of dividing total_marks and size.
- student >> an array of type: Student, the type you will create as a struct.
Software Requirements Specifications (SRS) :
- The program should contain:
- Functions: all of the program’s main operations should be done using functions.
- Structs: the student will be created not as a single variable, but as a struct.
- Arrays: as mentioned in the previous section, the marks will be an array. And you will also have an array of the student struct.
- Files: the data in the program will be stored/restored from a file.
- Header file: this is a library that you will create and make all of the functions and structs inside of it. Then you will include it in your project as well as some of the main built-in header files you will include such as iostream, … etc.
- The Main Menu of your program should look something like this:
- Add a new Student Record.
- Edit a Student Record.
- Delete a Student Record.
- Search for a Student Record.
o Search by the student’s id
o Search by the student’s name- Display All of the Students Records.
o Display the students ordered by id.
o Display the students ordered by name.
o Display the students ordered by grade.- Exit.