input: Write a function to find the smallest number in a list of numbers.
  
  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([8, 2, 10, 6, 1]) == 1
  assert find_smallest_number([3, 3, 3, 3]) == 3
  assert find_smallest_number([]) == None
  assert find_smallest_number([23]) == 23
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