When a function call itself directly or indirectly it is recursion and function which do this is called recursion function.
There are some rule for successful recursion.
- Function call itself directly or indirectly.
- There must be at least one non-recursion option.
- In general the function must move towards non recursive option.