1
CS 240Computer
Programming 1
Flowcharts
2
Algorithm
a step-by-step method for solving a problem or doing a task.
An informal definition of an algorithm is:
3
AlgorithmA step-by-step problem-solving procedure
An algorithm is a sequence of unambiguous instructions for solving a problem.
The number of steps of an algorithm will be countable and finite.
It is a sequence of instructions (or set of instructions) to make a program more readable; a process used to answer a question.
4
How to understand the problem?
Define the problem
Analyze the problem
Develop an algorithm/method of solution
Write a computer program corresponding to the algorithm
Test and debug the program
Document the program (how it works and how to use it)
5
Flowcharts
Tools
There are two commonly used tools to help to document program logic (the algorithm)
Pseudo code
6
Flowchart
The production flowchart is a visual representation of the sequence of the program. It shows what comes first, second, third, etc
Definition
A flowchart indicates:The steps to be taken in order to solve a
problem.The order or the sequence of these steps.
7
Flowchart Rules
1. Use only one start and one stop per flowchart, --that is, one way in and one way out of the flowchart.
2. The logic flow of the solution is displayed from top to bottom and from left to right.
3. Use the appropriate symbol for each type of operation.
4. Use arrows when moving to another part of the flowchart rather than lines.
5. Do not leave dead-ends--that is, a part of a question unanswered.
8
SymbolsSymbol Description
TERMINAL - To start or end a flowchart
INPUT / OUTPUT - Used with Read, Input, Print and other I/O commands.
PROCESSING - Used for operations done inside the computer. Such as calculations, storing and moving of data.
DECISION - Used to ask a question in programming. Questions are Yes/No format (Used with the If Statement).
DIRECTION FLOW - Used to connect symbols and to represent the direction of flow. Lines should not cross each other. Arrowheads should be placed at the end close to the symbol.
Connector - or joining of two parts of program
91.Simple sequential Flowchart
Construct a flow chart that prints "Hello, World"?
Example 1
101.Simple sequential Flowchart
Step 1- Start
Algorithm
Step 2- Print "Hello, World"
Step 3- Stop
111.Simple sequential Flowchart
Start
Print“Hello, World”
Stop
Flowchart
121.Simple sequential Flowchart
Construct a flow chart that finds the sum of two numbers.
Example 2
131.Simple sequential Flowchart
C: Sum (A+B)
Variables
B: Second Number
A: First Number
Step 3- Read B
Algorithm
Step 2- Read A
Step 1- Start
Step 4- Calculate C = A+BStep 5- Print CStep 6- Stop
141.Simple sequential Flowchart
Flowchart Start
Read A
Read B
C= A+B
Print C
Stop
151.Simple sequential Flowchart
Construct a flow chart that finds the sum, average and product of three numbers.
Example 3
161.Simple sequential Flowchart
Z: Third Number
Variables
Y: Second Number
X: First Number
Step 3- Calculate S = X+Y+Z
Algorithm
Step 2- Read X, Y, Z
Step 1- Start
Step 4- Calculate A = S/3
Step 6- Print S, A, PStep 7- Stop
S: Sum (X+Y+Z)
A: Average (S/3)
P: Product (X*Y*Z)
Step 5- Calculate P = X*Y*Z
171.Simple sequential Flowchart
Flowchart Start
Read X,Y,Z
S= X+Y+ZA=S/3
P=X*Y*Z
Print S,A,P
Stop
181.Simple sequential Flowchart
Construct a flow chart that finds the difference and the division of two numbers and display the
result
Example 4
191.Simple sequential Flowchart
D: Difference
Variables
N2 : Second Number
N1 : First Number
Step 3- Calculate D = N1-N2
Algorithm
Step 2- Read N1, N2
Step 1- Start
Step 4- Calculate V = N1/N2
Step 6- Stop
V: Division
Step 5- Print D,V
201.Simple sequential Flowchart
Flowchart
Start
Read N1, N2
D= N1 –N2V=N1/N2
Print D,V
Stop
211.Simple sequential Flowchart
Construct a flow chart that finds the circle area and circumference of a circle where R (radius) is given
Example 5 Exercise
221.Simple sequential Flowchart
A: Area
Variables
PI: PI = 3.14
R : Radius
Step 3- Calculate A = PI*(R)2
Algorithm
Step 2- Read R
Step 1- Start
Step 4- Calculate C = 2*PI*R
Step 6- Stop
C: Circumference
Step 5- Print R, A, C
23
2. Branched Flowcharts
Construct a flow chart for the following function
Example 1
F(x) = {
XX>=0-X X<0
24
Variables
X : Number
Step 3- if X >=0 then F =X
Algorithm
Step 2- Read X
Step 1- Start
Step 4- if X <0 then F =-X
Step 6- Stop
Step 5- Print F
2. Branched Flowcharts
F: function of X
25
Flowchart
2. Branched Flowcharts
Start
Read X
Print F
Stop
F=-X F=X
X>=0
YESNO
26
2. Branched Flowcharts
Trace the following flowchart and write the output of it.
Example 2
1. When X = 20
2. When X = -10
27
Flowchart
2. Branched FlowchartsStart
Read X
Print X,W
Stop
W=2*X-1
W=X+1
X?>00>
=0
W=SIN(X)+5
28
Result
2. Branched Flowcharts
X= 20W= 21
When X=20
X= -10W= -21
When X=-10
29
2. Branched Flowcharts
Draw a flowchart that shows the traffic light processing
Example 3 Exercise
30
Variables
C : Traffic light color
Step 4- if C is RED then Print STOP
Algorithm
Step 2- Read C
Step 1- Start
Step 5- if C is YELLOW then Print WAIT
Step 7- Stop
Step 6- if C is GREEN then Print PASS
2. Branched Flowcharts
Step 3- make a Decision (what is c)
31
Trace the following flowchart and write the output of it.
Example 1
3. Loop Flowcharts
32
Flowchart
3. Loop Flowcharts
Start
Stop
N=N+3
While N>=7
F
T
N=1
Print N
33
Result
3. Loop Flowcharts
N Loop1 1
4 2
7 3
34
Trace the following flowchart and write the output of it.
Example 2
3. Loop Flowcharts
35
Flowchart
3. Loop FlowchartsStart
Print avg
Stop
Sum= X + SumIncrement i
avg=Sum/10
While i<10
F
T
i=0Sum=0
Read X
36
Result
3. Loop Flowcharts
Loop Read X Sum i
1 3 3 12 4 7 23 1 8 3
4 10 18 4
5 7 25 5
6 5 30 6
7 3 33 7
8 8 41 8
9 4 45 910 5 50 10
Avg =50/10 =5