input: Write a function to generate a voltage signal with random noise based on a given frequency and amplitude. The function should return the generated signal as a numpy array.
  assert np.array_equal(generate_signal(250, 1)[:5], [0.929616, 0.094529, 1.913954, 1.094018, 1.046816])
  assert np.array_equal(generate_signal(100, 2)[:5], [2.039232, 2.018906, 1.969812, 2.047009, 2.093631])
  assert np.array_equal(generate_signal(50, 3)[:5], [3.058848, 3.143508, 2.954718, 3.070513, 2.960447])
  assert np.array_equal(generate_signal(10, 4)[:5], [4.078465, 3.713559, 4.22457, 4.094018, 4.140442])
  assert generate_signal(0, 0) is None
output: 
  import numpy as np
  
  def generate_signal(frequency, amplitude):
      if frequency == 0:
          return None
      t = np.linspace(0, 1, frequency)
      signal = amplitude * np.sin(2 * np.pi * t)
      noise = np.random.normal(0, 0.1, frequency)
      return signal + noise
  