input: Write a function to calculate the factorial of a given number. Return the result of the factorial calculation.
  
  assert factorial(7)==5040
  assert factorial(0)==1
  assert factorial(1)==1
  assert factorial(5)==120
  assert factorial(3)==6
output: def factorial(n):
      if n == 0 or n == 1:
          return 1
      result = 1
      for i in range(2, n + 1):
          result *= i
      return result