Algorithms, Flowchart and Pseudocode: Original Source
Algorithms, Flowchart and Pseudocode: Original Source
Algorithms, Flowchart and Pseudocode: Original Source
Pseudocode
Original Source :
http://www.ftsm.ukm.my/zma/TK1914/05-Algorithms and Problem Solving.ppt
WHAT IS AN ALGORITHM?
An algorithm is a set of ordered steps for
solving a problem.
Examples:
2
ALGORITHM IN REAL LIFE
Consider the following …
Problem: Baking a Cake
How to solve:
1. Start
2. Preheat the oven at 180oC
3. Prepare a baking pan
4. Beat butter with sugar
5. Mix them with flour, eggs and essence
vanilla
6. Pour the dough into the baking pan
7. Put the pan into the oven
8. End
3
‘DIVIDE AND CONQUER’
STRATEGY IN ALGORITHM
1. Start
2. Prepare a Breakfast
3. End
4
‘DIVIDE AND CONQUER’
STRATEGY IN ALGORITHM
1. Start
2. Prepare a Breakfast
2.1 Prepare a tuna sandwich
2.2 Prepare some chips
2.3 Make a cup of coffee
3. End
5
‘DIVIDE AND CONQUER’
STRATEGY IN ALGORITHM
1. Start
2. Prepare a Breakfast
2.1 Prepare a tuna sandwich
2.1.1 Take 2 slices of bread
2.1.2 Prepare tuna paste
2.2 Prepare some chips
2.3 Make a cup of coffee
3. End
6
‘DIVIDE AND CONQUER’ STRATEGY IN
ALGORITHM
1. Start
2. Prepare a Breakfast
2.1 Prepare a tuna sandwich
2.1.1 Take 2 slices of bread
2.1.2 Prepare tuna paste
2.2 Prepare some chips
2.2.1 Cut potatoes into slices
2.2.2 Fry the potatoes
2.3 Make a cup of coffee
3. End
7
‘DIVIDE AND CONQUER’ STRATEGY IN
ALGORITHM
1. Start
2. Prepare a Breakfast
2.1. Prepare a tuna sandwich
2.1.1 Take 2 slices of bread
2.1.2 Prepare tuna paste
2.2. Prepare some chips
2.2.1 Cut potatoes into slices
2.2.2 Fry the potatoes
2.3. Make a cup of coffee
2.3.1 Boil water
2.3.2 Add water with sugar and coffee
3. End
8
CLASS ACTIVITY 5.1
Write a simple algorithm for
withdrawing a sum of money at an
ATM.
9
WHY DO WE NEED TO BUILD
ALGORITHMS?
If we wish to build a house, we need to design it
first.
◦ Can you think of some possible consequences of not
designing a house before building it?
Similarly, computer programs (especially large
and complex ones) need to be designed before
they are written.
◦ Can you think of some possible consequences of not
designing a program before building it?
One of the things considered when designing a
computer program is the algorithm which it will
be based on.
10
ALGORITHMS IN PROGRAM DESIGN
11
Below are steps (in fact, an algorithm) for
building a program to solve a particular
problem:
◦ Analyse the problem
◦ Design a computer solution to the problem by
developing an algorithm.
◦ Write a computer program based on the algorithm.
◦ Test the program.
12
HOW TO SPECIFY AN ALGORITHM?
◦ Textually
For example, using pseudo code (see later)
◦ Graphically
For example, using flowcharts or UML activity
charts
13
FLOWCHARTS
A flowchart is a graphical representation of
the sequence of operations in a program.
An algorithm can be represented graphically
using a flowchart.
14
FLOWCHART NOTATIONS
Symbol Semantic
Start/End
Process
Input/Output
Test
Connector
Flow of activities
15
FLOWCHART: EXAMPLE 1
Start Algorithm starts here
Input
Gregorian date Input data from user
Convert Gregorian
date to Islamic date Perform the date conversion
16
PSEUDOCODE
Pseudocode is a generic way of describing
an algorithm without use of any specific
programming language syntax
An outline of a program, written in a form that
can easily be converted into real programming
statements. It resembles the actual program
that will be implemented later. However, it
cannot be compiled nor executed.
Pseudocode normally codes the following
actions:
◦ Initialisation of variables
◦ Assignment of values to the variables
◦ Arithmetic operations
◦ Relational operations
17
EXAMPLE OF PSEUDOCODE
1. Start
2. Read quantity
3. Read price_per_kg
4. price quantity * price_per_kg
5. Print price
6. End
18
CLASS ACTIVITY 5.2
Draw a flowchart which represents the
algorithm built in CA[5.1].
19
FLOWCHART: EXAMPLE 2
Start
• length, width and
area are referred to
Input
length, width as variables.
• A variable is like a box
in which a value can
area ← length X width be stored
Output
area
End
20
FLOWCHART: EXAMPLE 3
Selection Start
Input
height
false true
height > 1.6?
Output Output
“You are short!” “You are tall!”
End
21
FLOWCHART: EXAMPLE 4
Repetition (looping)
Start
Output
“Thank you!”
Input
stop
false
stop = 1?
true
End
22
YOU SHOULD NOW KNOW…
what an algorithm is.
when an algorithm should be developed when
flowcharts.
23