Algorithms, Flowchart and Pseudocode: Original Source

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 23

Algorithms, Flowchart and

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:

 An algorithm for preparing breakfast.


 An algorithm for converting Gregorian
dates to Islamic dates.
 An algorithm for calculating moon phase.
 An algorithm for drawing a curve.

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

Problem: Prepare a Breakfast

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

 A computer program is built to solve a


certain problem.
Examples:
1. A program to calculate the grade obtained
given a mark.
2. A program to convert a Gregorian date to an
Islamic date.
3. A program to produce a document.

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?

 An algorithm must be specific enough so that


it can be conveniently translated into a
computer program (using C++, for example).
 An algorithm can be specified:

◦ 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

Display Display the result


Islamic date

End Algorithm ends here

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

building a computer program.


 the basic steps in building a computer

program to solve a problem.


 what flowcharts are.
 how to represent algorithms graphically using

flowcharts.

23

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy