ALGORITHM
Definition:
• Algorithm is a finite sequence of
instructions required for producing the
desired result.
• It is also defined as “any problem whose
solution can be expressed in a list of
executable instruction.”
Characteristics:
• The steps in the algorithm must be
unambiguous .
• It should be written in sequence.
• Ensure that the algorithm will terminate.
• It should conclude after a finite number of
steps.
Quality of good algorithm:
• Time
• Memory
• Accuracy
• Sequence
• Generality
Representation of algorithm:
• Normal English -The algorithm is
represented in step by step sequential
order in normal English.
• Flow chart- It is a pictorial representation
of an algorithm.
• Pseudo code –it is a formal design tool
and utilized very well with the rules of
structure design and programming.
Contd..
• Decision table- it is used to helps a lot in
designing a specific segment of a design.
• Program - it is represented as a program
using any high level language.
Example
• Addition of two numbers
Step1: Start
Step2: Read a, b
Step3: Add the value of a with b and
store the result in c.
Step4: Display the value of c
Step5: Stop
PSEUDO CODE
Definition:
• Pseudo means imitates and code
means instruction.
• It is formal design tool.
• It is also called Program Design
Language.
Keywords
• READ,GET
• PRINT,DISPLAY
• COMPUTE,CALCULATE
Guidelines for writing Pseudo code
• Steps should be understandable
• Capitalize the keyword.
• Indent to show hierarchy.
• End multiple line structure etc,.
Example
READ a,b
C=a+b
WRITE C
stop
Example
READ a,b
IF a>b
PRINT a is greater
ELSE
PRINT b is greater
ENDIF
stop
Advantage & Disadvantage
• It can be easily modified
• It can be understood easily
• Compare to flowchart it is difficult to
understand the program logic.
Flowcharts
• It is the pictorial representation of the
algorithm.
• A flow chart, or flow diagram, is a
graphical representation of a process or
system that details the sequencing of
steps required to create output.
• A flowchart is a picture of the separate
steps of a process in sequential order.
Flowchart Symbols
• Terminal symbol
– It is used to represent the start, end of the
program logic.
• Input/Output
– It is used for input or output.
• Process Symbol
– It is used to represent the calculations,
data movements, initialization operations
etc,.
• Decision Symbol
– It is used to denote a decision to be made
at that point
• Flow lines
– It is used to connect the symbols
• Connectors
– It is used to connect the flow lines.
Rules for preparing
flowcharts
• It should be simple.
• Standard symbols should be used.
• The flow lines should not intersect each
others.
• In case of complex flowcharts use the
connectors symbols.
• Only one flow line should enter the
process symbol and only one flow line
should come out from a process symbol.
• Only one flow line used with the terminal
symbol.
START
STOP
• Only one flow line should enter the
decision symbol and two or three
flowlines may leave from the decision
symbol.
Benefits of Flowcharts
• Makes Logic Clear
• Communication
• Effective Analysis
• Useful in coding
• Useful in Testing etc,.
Limits of Flowcharts
• It is difficult to use flowcharts for large
program
• Difficult to modify
• Cost etc,.
Program control structures:
• Program control structure are defined as
the program statements that specifies the
order in which statements are executed.
• Types:
– Sequence control structure
– Selection control structure
– Repetition control structure
• The instructions are computed in
sequence i.e. it performs
instruction one after another.
• It uses top-down approach.
Sequence control
structure
Sequence control structure
Flow chart Pseudo code
Process 1
Process 2
Process nProcess 2
Process n
Process 1
Example
START
C=a+b
Print c
Read a,b
STOP
SELECTION CONTROL
STRUCTURE
• It is used for making decisions.
• It allows the program to make a choice
from alternative paths.
• IF …THEN
• IF …THEN… ELSE
• CASE etc.,
IF…THEN
Pseudo code Flow
chart
IF condition THEN
process 1
.
.
END IF
.
.
If
condition
NO
YES
Process 1
Example
Start
Read a
If a>0
Print a is Positive
Stop
no
yes
IF…THEN…ELSE
Pseudo code Flowchart
IF condition THEN
process 1
.
.
ELSE
process 2
.
.
END IF
.
.
If
condition
YES NO
Process 1 Process 2
Example
Start
Read a,b
If a>b
Print a is Greater
Print b is Greater
Stop
no
yes
CASE structure
Pseudo code Flow chart
.
.
CASE Type
Case Type-1:
Process 1
Case Type-2:
Process 2
.
.
Case Type-n:
Process n
.
.
END CASE
Type 1
Type 2
Type 3
Process 1
Process 2
Process 3
no
no
no
yes
yes
yes
start
stop
Read m1,m2,m3
Avg=(m1+m2+m3)/3
If
Avg>=60
If
Avg>=50
If
Avg>=35
Fail
Print
First Class
Print
Second Class
Print
Third Class
Example: Finding the Grade
Repetition control structure(looping)
• It is used to execute some instructions
several time based on some condition.
• WHILE loop
• Do…WHILE loop etc.,
WHILE Loop
Pseudo code Flow chart
WHILE condition
.
.
Body of the loop
.
.
END WHILE
Body of The loop
condition
no
yes
Example
Start
Num=0
Num=Num+1
Print Num
while
Num<5
stop
no
yes
DO…WHILE Loop
Pseudocode Flow chart
DO
.
.
Body of the loop
.
.
WHILE condition
.
.
END WHILE
Body of The loop
condition
no
yes
Example
Start
Num=0
Num=Num+1
Print Num
while
Num<5
stop
no
yes
Example: Finding the area of a
circle
Algorithm
Step1: Start
Step2: Read the value of r
Step3: Calculate area = 3.14*r*r
Step4: Print area
Step5: Stop
algorithm

algorithm