23
Algorithms, Flowchart and Pseudocode Original Source : http :// www.ftsm.ukm.my/zma/TK1914/05-Algorithms and Problem Solving.ppt

Algorithms, Flowchart and Pseudocode

  • Upload
    osanna

  • View
    139

  • Download
    5

Embed Size (px)

DESCRIPTION

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. - PowerPoint PPT Presentation

Citation preview

Page 2: Algorithms, Flowchart and  Pseudocode

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

WHAT IS AN ALGORITHM?

Page 3: Algorithms, Flowchart and  Pseudocode

Consider the following …Problem: Baking a CakeHow to solve:

1. Start2. Preheat the oven at 180oC3. Prepare a baking pan4. Beat butter with sugar5. Mix them with flour, eggs and essence

vanilla6. Pour the dough into the baking pan7. Put the pan into the oven8. End

3

ALGORITHM IN REAL LIFE

Page 4: Algorithms, Flowchart and  Pseudocode

Problem: Prepare a Breakfast

4

‘DIVIDE AND CONQUER’ STRATEGY IN ALGORITHM

1. Start2. Prepare a Breakfast3. End

Page 5: Algorithms, Flowchart and  Pseudocode

1. Start2. Prepare a Breakfast 2.1 Prepare a tuna sandwich 2.2 Prepare some chips 2.3 Make a cup of coffee3. End

5

‘DIVIDE AND CONQUER’ STRATEGY IN ALGORITHM

Page 6: Algorithms, Flowchart and  Pseudocode

1. Start2. 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 coffee3. End

6

‘DIVIDE AND CONQUER’ STRATEGY IN ALGORITHM

Page 7: Algorithms, Flowchart and  Pseudocode

1. Start2. 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 coffee3. End

‘DIVIDE AND CONQUER’ STRATEGY IN ALGORITHM

7

Page 8: Algorithms, Flowchart and  Pseudocode

1. Start2. 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 coffee3. End

‘DIVIDE AND CONQUER’ STRATEGY IN ALGORITHM

8

Page 9: Algorithms, Flowchart and  Pseudocode

Write a simple algorithm for withdrawing a sum of money at an ATM.

9

CLASS ACTIVITY 5.1

Page 10: Algorithms, Flowchart and  Pseudocode

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

WHY DO WE NEED TO BUILD ALGORITHMS?

Page 11: Algorithms, Flowchart and  Pseudocode

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

ALGORITHMS IN PROGRAM DESIGN

Page 12: Algorithms, Flowchart and  Pseudocode

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

Page 13: Algorithms, Flowchart and  Pseudocode

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

HOW TO SPECIFY AN ALGORITHM?

Page 14: Algorithms, Flowchart and  Pseudocode

A flowchart is a graphical representation of the sequence of operations in a program.

An algorithm can be represented graphically using a flowchart.

14

FLOWCHARTS

Page 15: Algorithms, Flowchart and  Pseudocode

15

FLOWCHART NOTATIONS

Start/EndSymbol Semantic

Process

Input/Output

Test

Connector

Flow of activities

Page 16: Algorithms, Flowchart and  Pseudocode

16

FLOWCHART: EXAMPLE 1Start

End

Input Gregorian date

Display Islamic date

Convert Gregoriandate to Islamic date

Algorithm starts here

Algorithm ends here

Display the result

Perform the date conversion

Input data from user

Page 17: Algorithms, Flowchart and  Pseudocode

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

PSEUDOCODE

Page 18: Algorithms, Flowchart and  Pseudocode

1. Start2. Read quantity3. Read price_per_kg4. price quantity * price_per_kg5. Print price6. End

18

EXAMPLE OF PSEUDOCODE

Page 19: Algorithms, Flowchart and  Pseudocode

Draw a flowchart which represents the algorithm built in CA[5.1].

19

CLASS ACTIVITY 5.2

Page 20: Algorithms, Flowchart and  Pseudocode

20

FLOWCHART: EXAMPLE 2Start

End

Input length, width

Outputarea

area ← length X width

• length, width and area are referred to as variables.

• A variable is like a box in which a value can be stored

Page 21: Algorithms, Flowchart and  Pseudocode

Selection

21

FLOWCHART: EXAMPLE 3

trueheight > 1.6?false

Output“You are tall!”

Output“You are short!”

Inputheight

Start

End

Page 22: Algorithms, Flowchart and  Pseudocode

Repetition (looping)

22

FLOWCHART: EXAMPLE 4

true

false

Output“Thank you!”

Inputstop

stop = 1?

Start

End

Page 23: Algorithms, Flowchart and  Pseudocode

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 SHOULD NOW KNOW…