Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

APPENDIX

Introduction to Flowcharting

This appendix provides a brief introduction to owcharting. It includes example owcharts for some of the programs that appear in Chapters 16. A owchart is a diagram that depicts the ow of a program. It contains symbols that represent each step in the program. Figure N-1 is a owchart for Program 1-1, the paycalculating program in Chapter 1. Figure N-1

START
Display message How many hours did you work?

Read hours

Display message How much do you get paid per hour?

Read rate

Multiply hours by rate and store result in pay

Display pay

END

N-1

N-2

Appendix N

Introduction to Flowcharting

Notice there are three types of symbols in this owchart: rounded rectangles (representing terminal points), parallelograms (representing input/output operations), and a rectangle (representing a process).
Terminal Input/Output Operations Processes

The rounded rectangles, or terminal points, indicate the owcharts starting and ending points. The parallelograms designate input or output operations. The rectangle depicts a process such as a mathematical computation, or a variable assignment. Notice that the symbols are connected with arrows that indicate the direction of program ow.

Connectors
Sometimes a owchart is broken into two or more smaller owcharts. This is usually done when a owchart does not t on a single page, or must be divided into sections. A connector symbol, which is a small circle with a letter or number inside it, allows you to connect two owcharts.

A
In Figure N-2 the A connector indicates that the second owchart segment begins where the rst owchart segment ends. Figure N-2
START

END

Flowchart Structures

N-3

Flowchart Structures
There are four general owchart structures: Sequence Decision Case Repetition A sequence structure indicates a series of actions or steps, performed in order. The owchart for the pay-calculating program is an example of a sequence structure. The owchart shown in Figure N-3 below is also a sequence structure. It depicts the steps performed in Program 2-20, from Chapter 2. Figure N-3

START

Calculate regular wages as base pay rate times regular hours

Calculate overtime wages as overtime pay rate times overtime hours

Calculate total wages as regular wages plus overtime wages

Display total wages

END

The owchart shown in Figure N-4, which is another sequence structure, depicts the steps performed in Program 3-13, the inventory program in Chapter 3. Notice the use of connector symbols to link the two owchart segments.

N-4

Appendix N

Introduction to Flowcharting

Figure N-4

START
Ask user to enter beginning inventory value for both stores

A
Subtract sold from store1 Ask user to enter number of widgets sold at store 2

Read begInv

Store begInv in store1 and store2

Read sold

Subtract sold from store2 Ask user to enter number of widgets sold at store 1 Display inventory values for both stores

Read sold

END

The Decision Structure In a decision structure the next action to be performed depends on the outcome of a true/ false test. A statement that is either true or false is evaluated. In the simplest form of decision structure, if the result of the test is true, a set of instructions is executed and if the result of the test is false, these instructions are skipped. In a owchart a new symbol, the diamond, is used to represent the true/false statement being tested. Figure N-5 shows the general form of this decision structure.

Flowchart Structures

N-5

Figure N-5

condition true statement(s)

false

Figure N-6 illustrates the use of this decision structure. In this owchart the statement x < y is tested. If this statement is true, the statements in process A are executed. If the statement is false, the process A statements are skipped. This decision structure is coded in C++ as an if statement. Figure N-6

x<y true process A

false

A slightly more complex form of the decision structure allows one set of statements to be executed if the test condition is true and another set to be executed if the test condition is false. Figure N-7 illustrates this form of the decision structure. Figure N-7

true

condition

false

statement set 1

statement set 2

N-6

Appendix N

Introduction to Flowcharting

Figure N-8 shows a owchart segment in which the statement x < y is again tested. But this time a set of statements is executed regardless of whether x < y evaluates to true or false. If it is true, the statements that make up process A are executed. If it is false, the statements that make up process B are executed instead. Figure N-8

true x<y

false

Process A

Process B

Figure N-9 shows a owchart that depicts the logic of Program 4-3, from Chapter 4. The decision structure shows that one of two possible messages is displayed on the screen, depending on the value of the expression number % 2. Notice in Program 4-3 that C++ uses an if/else statement to implement this decision structure. Figure N-9
START

Ask user to enter an integer

Read number

true

number % 2 equals 0

false

Display number is even

Display number is odd

END

Flowchart Structures

N-7

The Case Structure A case structure is a still more complex form of decision structure in which many different possible actions can be taken depending on the value of an integer or character variable or an integer expression. Figure N-10 shows the general form of a case structure. Figure N-10

The owchart shown in Figure N-11 depicts the logic of Program 4-23, which is also from Chapter 4. Program 4-23 illustrates how C++ uses a switch statement to implement the case structure. In this program, one of 4 possible paths is followed, depending on the value stored in the variable choice. Figure N-11

START Ask user to enter A, B, or C

Read choice

CASE choice A Display You entered A. B Display You entered B. C Display You entered C. Other Display error message

END

N-8

Appendix N

Introduction to Flowcharting

Repetition Structures A repetition structure represents a block of program code that repeats. This type of structure is commonly known as a loop. Figure N-12 shows an example of a repetition structure. Figure N-12

x<y false

true

Process A

Notice the use of the diamond symbol. A repetition structure tests a statement that indicates whether or not some condition exists. If the statement is true, meaning the condition exists, a set of actions is performed. Then the statement is tested again. If it is still true, the condition still exists and the actions are repeated. This continues until the statement is no longer true. In the owchart segment just shown, the statement x < y is tested. If it is true, then the statements that make up process A are executed and x < y is evaluated again. Process A is repeated as long as x is less than y. When x is no longer less than y, the repetition stops and the structure is exited. There are two forms of repetition structure: pre-test and post-test. A pre-test repetition structure tests its condition before it performs an action or set of actions. The owchart segment we have just examined shows a pre-test structure. Notice that Process A does not execute at all if the condition x < y is not true to begin with. The pre-test repetition structure is normally coded in C++ as a while loop. A post-test repetition structure tests its condition after it performs an action or set of actions. This type of loop always executes its code at least once. Figure N-13 shows a owchart segment representing a post-test structure. Figure N-13

Process A

x<y false

true

The post-test repetition structure is coded in C++ as a do-while loop.

Flowchart Structures

N-9

Figure N-14 shows a owchart depicting the logic of Program 5-6, which appears in Chapter 5. It uses a pre-test loop. Figure N-14
START

number = 1

Display table headings

number <= 5 false END

true

Display number and number squared

Add 1 to number

Modules A program module (such as a function in C++) is represented in a owchart by this symbol.

Figure N-15 illustrates its use. The code in the module is executed at the point in the program where the symbol is located in the owchart. Figure N-15
START Read input Call calcPay function Display results END

N-10

Appendix N

Introduction to Flowcharting

A separate owchart can then be constructed for the module. Figure N-16 shows a owchart for the main function of Program 6-14, the health club membership program that appears in Chapter 6. Notice how it calls several other modules, causing them to execute their code. Each of these other modules carries out some of the activities of the program. Figure N-16
START Call displayMenu Call getChoice and store the returned value in choice choice is not 4 true Prompt for number of months and read months CASE Choice 1 Call showFees passing adult data 2 Call showFees passing child data 3 Call showFees passing senior data false

true

choice is not 4 false END

You might also like