1A. Algorithms and Flowcharts
1A. Algorithms and Flowcharts
1A. Algorithms and Flowcharts
Implementation phase
implement the program in some programming
language
STEPS IN PROBLEM SOLVING
First
produce a general algorithm (one can
use pseudo code)
START
Step 1: Input M1,M2,M3,M4
Step 2: GRADE (M1+M2+M3+M4)/4
Input
M1,M2,M3,M4
Step 3: if (GRADE <50) then
Print “FAIL”
else
GRADE (M1+M2+M3+M4)/4 Print “PASS”
endif
N IS Y
GRADE<5
0
PRINT PRINT
“PASS” “FAIL”
STOP
EXAMPLE 2
Write an algorithm and draw a flowchart to convert
the length in feet to centimeter.
Pseudo code:
Input the length in feet (Lft)
Calculate the length in cm (Lcm) by multiplying LFT
with 30
Print length in cm (LCM)
Algorithm Flowchart
Step 1: Input Lft
START
Step 2: Lcm Lft x 30
Step 3: Print Lcm Input
Lft
Lcm Lft x 30
Print
Lcm
STOP
EXAMPLE 3
Write an algorithm and draw a flowchart
that will read the two sides of a rectangle
and calculate its area.
Pseudocode
Input the width (W) and Length (L) of a
rectangle
Calculate the area (A) by multiplying L with
W
Print A
Algorithm START
Step 1: Input W,L
Input
Step 2: A L x W W, L
Step 3: Print A
A LxW
Print
A
STOP
EXAMPLE 4
Write an algorithm and draw a flowchart that
will calculate the roots of a quadratic equation
ax 2 bx c 0
Hint: d = sqrt ( b2 4ac ), and the roots are:
x1 = (–b + d)/2a and x2 = (–b – d)/2a
Pseudo code:
Algorithm:
Input
Step 1: Input a, b, c a, b, c
Step 2: d sqrt ( b b 4 a c )
Step 3: x1 (–b + d) / (2 x a) d sqrt(b x b – 4 x a x c)
Print
x1 ,x2
STOP
DECISION STRUCTURES
The expression A>B is a logical expression
Y N
is
A>B
Print Print
A B
IF–THEN–ELSE STRUCTURE
The structure is as follows:
If condition then
true alternative
else
false alternative
endif
IF–THEN–ELSE STRUCTURE
The algorithm for the flowchart is as follows:
If A>B then
print A
else
Y N
print B is
A>B
endif
Print Print
A B
RELATIONAL OPERATORS
Relational Operators
Operator Description
> Greater than
< Less than
= Equal to
Greater than or equal to
Less than or equal to
Not equal to
EXAMPLE 5
Write an algorithm that reads two
values, determines the largest value and prints the
largest value with an identifying message.
ALGORITHM
Input
VALUE1,VALUE2
Y is
N
VALUE1>VALUE2
Print
“The largest value is”,
MAX
STOP
NESTED IFS
One of the alternatives within an IF–THEN–ELSE
statement
may involve further IF–THEN–ELSE statement
EXAMPLE 6
Write an algorithm that reads three numbers and
prints the value of the largest number.
Step 1: Input N1, N2, N3
Step 2: if (N1>N2) then
if (N1>N3) then
MAX N1 [N1>N2, N1>N3]
else
MAX N3 [N3>N1>N2]
endif
else
if (N2>N3) then
MAX N2 [N2>N1, N2>N3]
else
MAX N3 [N3>N2>N1]
endif
endif
Step 3: Print “The largest number is”, MAX
EXAMPLE 7
Write and algorithm and draw a flowchart to
a) read an employee name (NAME), overtime hours
worked (OVERTIME), hours absent (ABSENT)
and
b) determine the bonus payment (PAYMENT).
Step 1: Input NAME,OVERTIME,ABSENT
Step 2: if (OVERTIME–(2/3)*ABSENT > 40) then
PAYMENT 50
else if (OVERTIME–(2/3)*ABSENT > 30) then
PAYMENT 40
else if (OVERTIME–(2/3)*ABSENT > 20) then
PAYMENT 30
else if (OVERTIME–(2/3)*ABSENT > 10) then
PAYMENT 20
else
PAYMENT 10
endif
Step 3: Print “Bonus for”, NAME “is $”, PAYMENT
Bonus Schedule