Your final project will be to analyze, design, and document a simple program that utilizes a good design process and incorporates sequential, selection and repetitive programming statements(i.e. loops) as well as at least one function or subprogram call and the use of at least three arrays. The specific problem you need to solve for the final project is:
Design a program that will allow a user to Input a list of his Classmatess along with their Gender(Male, Female), Age and City where they reside. You must first collect all the information from the user. Then determine and print the average age of his classmates and print the names of anyone who lives in Annapolis or Baltimore.
For this part of the deliverable, there are 4 components of your submission including:
- Analysis- Demonstrates your thought process and steps used to analyze the problem. Be sure to include the required input and output and how you will obtain the required output from the given input? Also, include your variable names and definitions. Be sure to describe the necessary formulas and sample calculations that might be needed. Talk about the functions you plan to use and how you will use arrays. Be sure to talk about the types of programming statements that will be used on why.
- Program Design- A detailed, clear description of the program you are building. It should show the flow and logic of your program.
- Test plan – Prepare at least 3 sets of input data (Test data) along with their expected output for testing your program. Your test data can be presented in the form of a table as follows (note: feel free to adapt to your design)
- Pseudocode- Provide pseudocode of your overall design that fulfills the requirements of the project
Additional details about the program you need to write:
- Class sizes vary, however you should design to be able to enter at least 35 Classmates and be flexible enough to handle less than 35.
- Your test cases should have at least 5 classmates.
- Be sure to separate some functionality into functions or subprograms. Having all functionality in the main program is not a good design.
- Your design should consider how to indicate the user entry is complete.
- Carefully consider the best data type for each of your variables. (e.g. when to use Float versus Integers versus Strings)