What is the difference between algorithm and program?

Is this set of blocks an algorithm or a program? Is a program just an algorithm that can be run on a computer? If so, then all block based coding steps is a program?