Sie sind auf Seite 1von 16

# ALGORITHM AND FLOWCHART

ALGORITHM
A. Algorithm Defined

## It is a set of instructions of how to carry out a process. An algorithm lists the

steps that must be followed to complete the process and to reach the
solution.

## A finite set of an instruction that specifies a sequence of operation to be

carried out in order to solve a specific problem.

## An unambiguous procedure specifying a finite number of steps to be taken.

B. Properties of Algorithm
1. Finiteness - there is an exact number of steps to be taken and has an end.
2. Absence of Ambiguity - means that every instruction is precisely described
and clearly specified.
3. Sequence of Execution instructions are performed from top to bottom.
4. Input and Output - defined the unknowns of the problem is specified and
with the expected outcome.
5. Effectiveness- the solution prescribed is guaranteed to give a correct
answer and that the specified process is faithfully carried out.
6. Scope Definition - applies to a specific problem or class of problem.

1. Pseudocode

## Specifies the steps of algorithm using essentially natural language of

superimposed control structure.

## Pseudo means pretend or false Pseudo Code is pretend or false

computer code; generic English-like terms that are somewhat like computer
code.

## It is not as standardized as flowcharts, and does not facilitate the breaking

down of problems as well as a flowchart does.

## 2. Flowchart - a traditional graphical tool with standardized symbols. Show the

sequence of steps in an algorithm.

D. Examples
1. Write an algorithm to determine a students final grade and indicate whether it is
passing or failing. The final grade is calculated as the average of four marks.
Pseudocode:
Input a set of 4 marks
Calculate their average by summing and dividing by 4
if average is below 50
Print FAIL
else
Print PASS
Detailed Algorithm
Step 1: Input M1,M2,M3,M4
Step 3: if (GRADE < 50) then
Print FAIL
else
Print PASS
endif

FLOWCHART
A. Flowchart Defined
It is a visual representation of an algorithm
It uses easy-to-understand symbols to represent actions on data and the flow
of data
It consists of a sequence of instructions linked together by arrows to show the
order in which the instructions must be carried out.
A flowchart is basically the plan to be followed when the program is written. It
acts like a road map for a programmer and guides him in proceeding from the
starting point to the final point while writing a computer program.
The process of drawing a flowchart for an algorithm is referred to as
flowcharting.

B. Flowchart Symbols

C. Processing
A processing symbol is used in a flowchart to represent arithmetic and data movement
instructions. Thus, all arithmetic processes such as adding, subtracting, multiplying and
dividing are shown by a processing symbol. The logical process of moving data from
one location of the main memory to another is also denoted by this symbol.
1. Flow lines
Flow lines with arrowheads are used to indicate the flow of operation, that is, the exact
sequence in which the instructions are to be executed. The normal flow of flowchart is
from top to bottom and left to right. Arrowheads are required only when the normal top
to bottom flow is not to be followed.
1. Decision
The decision symbol is used in a flowchart to indicate a point at which a decision has to
be made and a branch to one of two or more alternative points is possible.
1. Connector

If a flowchart becomes very long, the flow lines start crisscrossing at many places
that causes confusion and reduces the clarity of the flowchart. Moreover, there
are instances when a flowchart becomes too long to fit in a single page and the
use of flow lines becomes impossible. Thus, whenever a flowchart becomes too
complex that the number and direction of flow lines is confusing or it spreads
over more than one page, it is useful to utilize the connector symbol as a
substitute for flow lines. This symbol represents an entry from, or an exit to
another part of the flowchart. A connector symbol is represented by a circle and a
letter or digit is placed within the circle to indicate the link. A pair of identically
labeled connector symbols is commonly used to indicate a continued flow when
the use of a line is confusing

Name

Terminator (terminal)

Symbols

Representation

program

Preparation

## Signifies the preparation

of data

Data (input/output)

## Input or Output operation

Process

Computational steps or
processing function of a
program

Decision

## Decision making and

branching

On-page Connector

Connector or joining of
two parts of a program

Off-page Connector

from one page

Flow lines

operation

## E. Basic Control Structures

1. Sequence process is executed from one to another in a straightforward manner.

Examples:
1. Draw a flowchart that will accept and display a number. Write its equivalent algorithm.

BEGIN

Algorithm

## Step 1. Read in the value of A

Step 2. Print the value of A.

Print A

2. Draw a flowchart
ENDthat will compute and display the sum and product of two numbers.
Write its equivalent algorithm.
BEGIN

Sum=0;
Product =0
P=0
Num2
Sum = Num1+Num2
Product = Num1*Num2
P= A*B
Print Sum,
Product

Algorithm

## Step 1. Initialize sum(S) and

product(P) into 0.
Step 2. Read in the values of A and
B.
Step 3. Compute sum(S) by adding
A and B then compute
product(P) by multiplying A
and B.
Step 4. Print the value of S and P.

END

3. Write an algorithm and draw a flowchart that will read the two sides of a rectangle
calculate and print its area. Formula: Area = Length x Width.

BEGIN

Area=0

Algorithm

## Step 1. Initialize Area(A) into 0.

Step 2. Input the width(W) and
length(L) of a rectangle.

Input
W, L

## Step 3. Calculate the A by

multiplying W and L.
Step 4. Print the value of A.

Area = L x W

END
Print
Area

2. Selection - Once the condition is evaluated, the control flows into one of two paths.
Once the conditional execution is finished, the flows rejoin before leaving the structure.
As an alternative, the "Question" could be replaced with a Boolean expression and the
branches labelled END
"TRUE" and "FALSE".

## Operators Commonly Used in Flowcharting

A. Arithmetic Operators
Operators

Meaning

Subtraction

Multiplication

Division

B. Relational Operators
Operators

Meaning

Equal

>

Greater than

<

Less than

<>

Not equal

>

<

## Less than or Equal to

C. Logical Operators
Operator

Meaning

&&

AND

II

OR

NOT

Examples:
1. Draw a flowchart that will input values for x and y. Compare two values inputted and
print which of the values is higher including the remark Higher. Write its equivalent
algorithm.
Algorithm
Step 1. Read in the values of x and y.
Step 2. Test if x is greater than y.
BEGIN

## Step 3. If x is greater than y, x is higher. However, if x is

less than y, y is higher.
Input

x, y
Step 4. Print the
number and the remark Higher.

x>y
x>y

Print x, Higher

F
Print y, Higher

END

2. Draw a flowchart that will determine the students final grade and indicate whether it
is passing or failing. The final grade is calculated as the average of four marks.

Algorithm
into 0.
BEGIN
Step 2. Input a set of 4 marks (M1, M2, M3, M4).
by summing and
dividing by 4.
Step 4. If average(Grade) is below 50
Input
Print FAIL M1,M2,M3,M4

else
PASS

T

Print
Pass

Print

Fail

END

## 3. JLB Manufacturing Company plans to give a year-end bonus to each of its

employee. Draw a flowchart will compute the bonus of an employee. Consider the
following conditions: If the employees monthly salary is less than or equal 10,000
pesos, the bonus is 25% of the salary. If the employees monthly salary is greater
than 10,000 pesos, the bonus is 3,000 pesos. Print the name and the corresponding
bonus for each employee. Write the equivalent algorithm.

Algorithm
Step 1. Initialize bonus to 0.
Step 2. Read in employees name and salary.
Step 3. Test if employees salary is less than 10,000.
Step 4. If salary < 10,000 then
Bonus = salary * 25 %
Else
Bonus = 3,000
Step 5. Print the employees name and bonus.

BEGIN

bonus=0
begin

Salary

Salary
< =10,000
T
Bonus = 0.25*Salary

Print Name,
Bonus

en end
dEND

Bonus = 3,000

## 2. Repetition - Computers are particularly well suited to applications in which

operations are repeated many times. If the same task is repeated over and over
again a loop can be used to reduce program size and complexity
3.

4.
5.
6. Loops and Counter
7. Looping
8. Used when it is desired to make the same calculation of more than one set of
data. It consists of repeating a program, or a section of program and substituting
new data for each repetition.
9.
10. Counter
11. Is a setup in a program loop to keep track of a number of times the program
segment is repeated. The program can then be terminated after the completion
of a predetermined number of passes.
12.
13. Steps in Loop Control
14. Initialization
15. The value of counter is initially set equal to zero or one.
16.
17. Test for limit condition

18. Before the logic flow gets out of a loop, a loop terminating condition must first be
satisfied.
19.
Incrementation
20. Often each loop is executed, 1 is added to the counter. Thus counter reflects the
number of times the operation has been performed.
21.
22.
23. Examples:
24. 1. Construct a flowchart that will count from 1 to 10 and print each number
counted using the looping structure. Write the equivalent algorithm.
25.
26.
Algorithm

## Step 1. Initialize the value of N to 0.

Step 2. Test if N is less than 10.
Step 3. If N is less than 10, add 1 to the value of N, print the value then
go back to step 2. However, if N is greater than 10, stop
processing.
27.
28.
29.
30.
31.
32.

BEGIN

N=0

N<10

END

T
N=N +1

Print N

33. 2. The initial value of the radius of a circle is equal to 1 unit and each succeeding
radius is 1 unit greater than the value before it. Draw a flowchart to compute the
area of a circle starting with radius=1 up to radius = 5, then print each radius and
the corresponding area of a circle.
34. Formula: area = pi x r2
35.
36.
37.
38.
39.
Algorithm
40.
Step 1. Initialize the value of radius(r) to 1 and the value of pi to 3.1416.
Step 2. Compute the area by multiplying pi to the square of r.
Step 3. Print the value of r and the area.
Step 4. Increment the value of r by 1.
Step 5. Test if r is less than or equal to 5.
Step 6. If r is less than or equal to 5, loop back and repeat steps 2 to 5.
However, if r is greater than 5, stop processing.

begin
BEGIN
Pi=3.1416 r=1

area=pi * r *r

Print r, area
T
r=r+1

end
END
R<5