Imperative programming is a type of programming paradigm which uses statements that describe a step by step process that changes the state of a program. However, this programming paradigm is the opposite of declarative programming.