2. There are many different ways of describing an
algorithm in the Design phase:
NS Diagrams
Flowcharts
Pseudo code
…
NS Diagrams are useful for encouraging some aspects
of structured programming techniques.
NS Diagrams are noticeable by their ‘building blocks’
form, of which there are 4 main types..
3. Any algorithm should be able to be constructed using
one or more of the 4 main parts of an algorithm:
Process – a single step
Conditional – dependant upon choice
Iteration – loop until a condition is met
Module - a grouping of the above which can be
referenced multiple times, from multiple places.
4. A process block is used to represent a single action
An algorithm is composed of steps or primitives.
E.g.:
Or multiple together:
Process (single step)
Get an egg
Get an egg
Crack the egg
5. Used to represent a condition leading to two possible
actions (also known as a Boolean)
A branching action is represented by two blocks side
by side meaning: perform the action on the left if the
condition is true, or else perform the action on the
right if the condition is false.
E.g.:
6. A multiple branching block is used when there are
several alternative actions:
E.g.:
7. A test first loop block is used when a
set of actions are to be repeated under
a particular condition.
The condition is tested first
Repeated action is represented by a
block within a block, meaning repeat
the action under the conditions stated
Because a test first loop is tested
before any actions it is possible that no
actions take place.
8. Conditional iteration:
A counted loop is also a test first loop
– repeating the actions a set number of
times and are counted before taking
place.
NOTE: the counting starts before the
loop begins. ‘1’ happens before any eggs
are broken in.
9. A test last loop is used when a process is repeated
under a particular condition.
The condition is tested last
10. These repeated actions are tested
at the end of the loop.
E.g. making a pancake mix:
The actions in a test last loop are
always carried out at least once
because the test occurs after the
actions have occurred. So a little
milk will always be added and
stirred.
11. A sub process block or module is
used in instances where the
process is large enough to
warrant a separate design or
where the process is used several
times in the same diagram.
12.
13. 1. Complete
a. Why are N-S diagrams used when designing
algorithms?
b. What are some other algorithm design tools?
2. What is being tested in test first and test last loops?
3. Express this part of an N-S diagram in words: