# Algorithms

Definition: An algorithm is a set of finite, well defined steps which outlines the solution to a specific problem.

Alternative Definition : WHAT IS AN ALGORITHM? – DEFINITION

We use algorithms every day to solve problems, weather we’re conscious of it or not.

When we cook a new dish we follow a recipe, when we solve a math problem we follow a procedure.

In our case, we’d like to document the solution to a specific problem using an algorithm so that we can communicate it to a programmer , or create the tool  as a program itself.

We use algorithms, but what are the properties of a good algorithm?

• Vague recipe instructions, what exactly is 2 cups of flour?
• A videogame walkthrough that isn’t descriptive enough
• A video tutorial that talks  a lot about becoming a youtuber , but the steps aren’t outlined in order.

What are the properties of good instructions, good algorithms?

## Properties of good algorithms

• Has a  finite number of steps ( a definite beginning and an end)
• Is precise,
• Is unambiguous (not subject to interpretation)
• Shows the flow of control from one sub-process to another
• Must output results
• It must terminate.