Algorithms- Flowcharts

Algorithms- Flowcharts

Flowcharts Basics

  • A flowchart is a type of diagram that represents an algorithm or process, showing the steps as boxes of various kinds, with their order by connecting them with arrows.

  • Flowcharts offer a visual way of representing algorithms. They are excellent tools for communicating how processes work, and for clearly documenting how a particular task is to be completed.

  • The different boxes (or ‘nodes’) represent different types of operation in the algorithm. The arrows direct the flow of operation – hence the name ‘flowchart’.

Common Symbols Used in Flowcharts

  • Ovals: Used to represent the start and end points of a process.

  • Rectangles: Demonstrate a process, or an operation. It’s an instruction for action.

  • Diamonds/Rhombus: Shows a decision point in the process. This is often a yes/no question or true/false test.

  • Arrows: Indicate the flow of control. An arrow coming from one symbol and ending at another symbol represents that control passes to the symbol where the arrow ends.

Creating Flowcharts

  • Start and finish your flowchart with the terminator (oval) symbol.

  • Use rectangles for processes that need to be completed, such as ‘Input username’.

  • Decisions are represented by diamonds – each decision will have at least two outcomes, which should also be clearly labelled.

  • Make sure your flowchart is logical and clear. Arrows should not cross over each other unnecessarily.

Evaluating Flowcharts

  • When evaluating a flowchart, check for clarity (Is each process and decision clear?); accuracy (Does it reflect the actual or intended process?); and efficiency (Are there unnecessary steps that could be removed or simplified?).

  • Flowcharts, like other forms of representing algorithms, can be reviewed and revised. Look to see if there are simpler or more efficient ways of reaching the same outcome.

  • Revisions to flowcharts should improve clarity, accuracy and efficiency without distorting the aim of the process or algorithm.

Using Flowcharts for Problem Solving

  • Flowcharts can be used to represent complex problems and associated algorithms visually, making them easier to understand.

  • They can illustrate potential options, paths and outcomes in decision-making processes.

  • By visualizing algorithms or processes, flowcharts can highlight potential issues or inefficiencies which might not be as obvious in other forms of representation.