CMIS102 Homework Assignment 3 (Worth 13% of your grade)
In this assignment, you will design a program to perform the following task:
Write a program that would calculate and display the results for the multiplication table for values ranging from 1 to 100.
Before attempting this exercise, be sure you have completed all of chapter 4, 5 and course module readings, participated in the weekly conferences, and thoroughly understand the examples throughout the chapter. There are 3 main components of your submission including the problem analysis, program design and documentation, and sample test data.
1. Provide your analysis for the following problem statement: You need to write a program that would calculate the results for the multiplication table up from 1 to 100. (For example, 1X1, 1X2, 1X3 … 1X10, 2X1, 2X2 …. 10X2 … 10×10). Your program should print the output for each step and output a new line after 10 items. So the example output would be something like this Notice a new line appears after 10 steps:
1 2 3 4 5 6 7 8 9 10
2 4 6 8 10 … 20
10 20 30 … 100
To write the new lines you can just use code similar to : write “new line”. Hint: You will probably use a nested repetition loop.
Your analysis should be clearly written and demonstrate your thought process and steps used to analyze the problem. Be sure to include what is the required output? What is the necessary input and how you will obtain the required output from the given input? Also, include your variable names and definitions. Be sure to describe any necessary formulas and sample calculations.
2. Provide your program design for the program you analyzed for printing the multiplication table. Be sure to describe the fundamental tasks (i.e., things your program must do) needed to solve the problem so you can use a modular design. Provide pseudocode of your overall design that includes the Main module and the order of the module calls, and a Hierarchy chart for the program (see figure 3.8 page 148). Finally, display the flow charts (using Raptor, or your favorite graphics editor) for each module. (See figure 5.3 page 233 as an example.)
Include header and step comments in your pseudocode, using a similar approach as the example provided in section 2.3 (textbook page 86). See example 2.8 on pages 88).
3. Prepare any input data (Test data) along with expected output for testing your program (Note: Programs may not always have both input and output data. Just provide test cases for your application). Your test data can be presented in the form of a table as was shown in Assignment 1