Sie sind auf Seite 1von 31

# FP305 DATA STRUCTURE

Page 1

OVERVIEW OF ALGORITHM

ALGORITHM :
Algorithm is a set of steps for solving a particular problem using a certain method until the problem is solved. The word ALGORITHM is named as the name of Mathematician namely Al-Khawarizmi.

Page 2

OVERVIEW OF ALGORITHM

## The roles of algorithm in problem solving :

i. Help a programmer to write efficient code and solve problems in optimal or near-optimal ways.

ii.

## Help a programmer to structure the code, so that it can be

maintained more easily by encouraging a better design / implementation.

Page 3

OVERVIEW OF ALGORITHM

## ALGORITHM can be developed using:

1. Pseudo Code(Similar to programming language) 2. Flow Charts Algorithm constructed in the form that is easily understood by humans to facilitate the review of the program logic flow.

## However, the algorithm can not be understood by the computer.

Page 4

OVERVIEW OF ALGORITHM

1. Pseudo Code
Pseudo code is a sequence of steps that are written using natural language processing expository involved in solving

problems.
The main purpose of presenting problem solving in a logical

and systematic.

Page 5

OVERVIEW OF ALGORITHM

## There are several ways of writing pseudo code is used, two

types will be introduced: i. Language statement

ii.

## Programming language similar to language statement

Each step in problem solving are arranged one by one systematically. Each line of pseudo code represents a one-off measures implemented.

Page 6

OVERVIEW OF ALGORITHM

i.

Language statement
Algorithms written in natural language and has no specific regulations.

## In this method the number given in the sequence of steps

is very important.

Page 7

OVERVIEW OF ALGORITHM

## Example: an algorithm for preparing a cup of coffee

1. boil water 2. add a cup of coffee

3. if necessary sugar
3.1. add sugar 4. if necessary cream 4.1 add cream 5. put hot water into the cup

Page 8

OVERVIEW OF ALGORITHM

## The order of implementation of measures in accordance

with written numbers. Suitable for a simple problem because there is no sequence

## and structure of the complex.

Page 9

OVERVIEW OF ALGORITHM

a) Sequence structure:
1. beginning 2. step_1

3. step_2
: n. step_n n +1. end

Page 10

OVERVIEW OF ALGORITHM

## b) The structure of the selection:

n. if the conditions n.1. step_n.1

n.2. step_n.2
: nn step_n.n

Page 11

OVERVIEW OF ALGORITHM

c) Structure jump:
n. move to the n

d) Repeat structure:
n. go to step before the n

Page 12

OVERVIEW OF ALGORITHM

ii.

## Programming language similar to language statement

Disclosure of pseudo code is a simple algorithm in the English language that closely resembles the programming

## language PASCAL - BUT it is NOT tied to any programming

language. The order of implementation of measures can be controlled by using some control structures. Keywords used to explain the structures of this control.

Page 13

OVERVIEW OF ALGORITHM

a) Sequence structure:
begin 1. beginning

2. step_1
3. step_2 : n. step_n n +1. end

Page 14

OVERVIEW OF ALGORITHM

## b) The structure of the selection:

if syarat then code block true

else
code block is not true End if

Page 15

OVERVIEW OF ALGORITHM

c) Struktur ulangan:
repeat bhg_yg_perlu diulang

until syarat

Page 16

OVERVIEW OF ALGORITHM

## while syarat do bhg_yg_perlu diulang

End while

Page 17

OVERVIEW OF ALGORITHM

Example: an algorithm for preparing a cup of coffee using programming language similar to language statement

Page 18

OVERVIEW OF ALGORITHM

begin add a cup of coffee if necessary sugar then add sugar end if if necessary cream then add cream

end if
put hot water into the cup end
Page 19

OVERVIEW OF ALGORITHM

i.
ii.

Sequence
Choice

## iii. Repeat or Loop

Page 20

OVERVIEW OF ALGORITHM

2. Flow Chart
Flow chart consisting of boxes containing various forms to indicate the operation to be done and the arrows to specify the sequence of

operations.

Page 21

OVERVIEW OF ALGORITHM

## Start Add Sugar Process Subroutine functions

End Terminator

Page 22

OVERVIEW OF ALGORITHM

A 3

Decision

## Connector at same page

Off-page connector

Page 23

OVERVIEW OF ALGORITHM

## Flow chart symbols

Print

Input

Storage

Page 24

OVERVIEW OF ALGORITHM

Start

Boil a water

## Put the coffee

25

Page 25

OVERVIEW OF ALGORITHM

26

Yes

Need sugar?
No Need creamer? Yes Add creamer

No
Put the hot water

End

Page 26

OVERVIEW OF ALGORITHM

i.
ii.

## Troubleshooting a finite or a finish

Each presented with a clear direction

## iv. Algorithm has output as a result of the implementation

v. Algorithm can be implemented effectively

Page 27

OVERVIEW OF ALGORITHM

## Two main factors used to measure the effectiveness of an

algorithm are :
i. ii. Running time Use of memory space

Page 28

EXERCISES

1. There is a program which will receive a pair of input numbers and print the message "SAME" if the two numbers

## have the same value, the message "NUMBER ONE IS BIGGER

if the first number is greater than the second number and the message "NUMBER TWO IS BIGGER if the second number is greater than the first number.

Page 29

EXERCISES

i.
ii.

Write

an

algorithm

using

pseudo

code

in

language

Page 30

EXERCISES

2. 3. 4.

## problem of finding an average of two numbers.

Define an algorithm. List six properties that an algorithm should possess.

Page 31