input: Write a function to find the smallest number in a list of numbers. The function should return the smallest number in the list. If the list is empty, the function should return None.
  def find_smallest_number(numbers):
      if not numbers:
          return None
      smallest = numbers[0]
      for num in numbers:
          if num < smallest:
              smallest = num
      return smallest
  
  assert find_smallest_number([5, 4, 12, 17, 9]) == 4
  assert find_smallest_number([10, 3, 8, 1, 2]) == 1
  assert find_smallest_number([7, 7, 7, 7]) == 7
  assert find_smallest_number([]) == None
output: def find_smallest_number(numbers):
      if not numbers:
          return None
      smallest = numbers[0]
      for num in numbers:
          if num < smallest:
              smallest = num
      return smallest