Python Program to Find Factorial of a Number Using Recursion
In this tutorial, you will learn how to Find Factorial of a Number Using Recursion with the if, else and elif statement with the different operators of the python programming language.
How to Find Factorial of a Number Using Recursion?
Let’s take a look at the source code , here the values are given as input by the user in the code, the if, else and elif statements and for loop along with the assignment operators carry out the function.
# Factorial of a number using recursion def recur_factorial(n): if n == 1: return n else: return n*recur_factorial(n-1) num = int(input("Enter the integer: ")) if num < 0: print("\nSorry, factorial does not exist for negative numbers") elif num == 0: print("\nThe factorial of 0 is 1") else: print("\nThe factorial of", num, "is", recur_factorial(num))
Enter the integer: The factorial of 6 is 720
- At the start, we use
def recur_factorial(n):where the
defkeyword is used to define a function and
recur_factorialis used to call the function to get the value of the variable
- We declare an
ifstatement with the condition
n == 1:where if it is satisfied, using the
returnfunction we return the value of n, if the condition is not satisfied, it moves to the next step which is the
elsestatement where the value obtained after the execution of the equation
n*recur_factorial(n-1)is returned using the
- Here we give the user the option to enter the values and the input values are scanned using the
inputfunction and are stored in the variable
numwith the statements/strings
("Enter the integer: "), we use the
intfunction and declare the input value as an integer value.
- In the STDIN section of the code editor the input values are entered.
- We declare another
ifstatement with the condition
num < 0where if it is satisfied, the
("\nSorry, factorial does not exist for negative numbers"), if the condition is not satisfied, it moves to the next step which is the
- We declare the
elifstatement with the condition
num == 0, where if the condition is satisfied, the
("\nThe factorial of 0 is 1")
- If the above
elifstatement is not satisfied it moves to the next step which is the
elsestatement, where the
("\nThe factorial of", num, "is", recur_factorial(num), where the function
recur_factorial(num)holds the final value of the recursive function will be displayed.
- Recursive functions are functions that calls itself. It is always made up of 2 portions, the base case and the recursive case. The base case is the condition to stop the recursion. The recursive case is the part where the function calls on itself.
- The < lesser than operator is a comparison operator which returns True if the condition is satisfied, if not it returns false.
- The == equality is a comparison operator which returns True is the two items are equal and returns False if not equal.
- The input() function allows a user to insert a value into a program, it returns a string value.
- The if and else statements evaluates whether an expression is true or false. If a condition is true, the “if” statement is executed otherwise, the “else” statement is executed.
- The elif is short for else if, it allows us to check for multiple expressions.
- The colon : at the end of the if and else statement tells Python that the next line of code should only be run if the condition is true.
- The statement for the input function are enclosed in single quotes and parenthesis.
- The \n in the code indicates a new line or the end of a statement line or a string.
- The print statement/string to be displayed in enclosed in double quotes.