input: Write a function to develop a Python program that clearly understands the concept of recursion. The function should define a recursive function to calculate the factorial of a given number and then calculate the factorial of the number 5.
  def understand_recursion():
     # Define a recursive function to calculate the factorial of a number
     def factorial(n):
        if n == 1:
           return 1
        else:
           return n * factorial(n - 1)
  
     # Calculate factorial of number 5
     result = factorial(5)
     return f"Factorial of 5 is {result}"
  
  assert understand_recursion()=="Factorial of 5 is 120"
  assert factorial(3)==6
  assert factorial(1)==1
  assert factorial(0)==1
output: def understand_recursion():
     def factorial(n):
        if n == 0 or n == 1:
           return 1
        else:
           return n * factorial(n - 1)
  
     result = factorial(5)
     return f"Factorial of 5 is {result}"