An algorithm is a specific, defined sequence of steps that need to be followed in order to solve a given problem. Pseudocode is a high-level representation of an algorithm written in no particular programming language which is also not executable. Executable code written in a specific programming language is called a program.