input: Write a function to find the smallest number in a list of numbers. If the list is empty, return None. The function should iterate through the list and compare each number to find the smallest one. If the list is not empty, return the smallest number found.
  assert find_smallest_number([5, 4, 12, 17, 9])==4
  assert find_smallest_number([10, -1, 15, 8])==-1
  assert find_smallest_number([3, 3, 3, 3])==3
  assert find_smallest_number([1])==1
  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