An allows the program to make decisions based on certain conditions.

Input is used to ensure that user input meets certain criteria.

Pseudocode uses simple statements to describe the steps of an algorithm.