# CMIS 102 Introduction to Problem Solving and Algorithm Design

InstructionsRepetition Statements

In this homework, you will design a program to perform the following task:

Write a program that would allow a user to enter student names and Final grades (e.g. A,B,C,D,F) from their courses. You do not know how many students need to be entered. You also do not know how many courses each of the students completed. Design your program to calculate the Grade Point Average (GPA) for each student based on each of their final grades.  The program should output the Student name along with the GPA.

There are 5 components of your submission including:

• Program Description- A detailed, clear description of the program you are building.
• 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 how your design will allow any number of students and final grades to be possible inputs.
• Test plan – Prepare at least 1 set of input data (Test data) along with their expected output for testing your program.  This test case should include at least 10 students. Your test data can be presented in the form of a table as follows (note: feel free to adapt to your design)
• Flowchart – Provide a flowchart for your design. You can use Word, Powerpoint, Visio or any software you have available that will allow to draw shapes and connectors.
• Pseudocode- Provide pseudocode of your overall design that fulfills the requirements of the project

All of these components should be placed in word document for submission.

Additional details about the program you need to write:

1. GPA is calculated by summing the point equivalents for final grades and taking the average. A =4, B=3, C=2, D=1, and F = 0. So, if someone earned 2 A’s and 1 B, their GPA would be (4 + 4 + 3)/3 = 3.67
2. Think about using a simple process to stop entering students and course grades. For example, if StudentName < 0.

Example application test data:

Test Case #

Input

Expected Output

1

Sally: A,D,B,C

John: A,A,A,B,B

Jason: A,A,A,A,B

Bob: B,B

Bill: A

GPA for Sally is : 2.5

GPA for John is: 3.6

GPA for Jason is: 3.8

GPA for Bob is: 3.0

GPA for Bill is: 4.0

Submission requirements:

Your completed assignment should be saved as Word document and submitted to your LEO assignment area no later than the due date listed in the syllabus. Your document should be neat, well-written with minimal grammatical and spelling errors. Your name should be clearly listed on the first page along with the class/section, professor and due date. Your document should contain page numbers at the bottom of each page. Single or double space line formatting is acceptable.

You should name the file yournamehw3.docx (or yournamehw3.doc). So if my name was Julie Smith, I would name my document juliesmithhw3.docx.

Please pay close attention to the submission requirements.