input: Write a function to predict the next day's forecast temperature using the exponential smoothing algorithm given the past three day's forecast temperatures. If the list is empty, return 0.
  
  def predict_temperature(temperature_list):
      if not temperature_list:
          return 0
      alpha = 0.5 # Confidence value
      predicted_temperature = temperature_list[-1] # Initializing prediction
      for temperature in temperature_list[:-1]:
          predicted_temperature = alpha*temperature + (1-alpha)*predicted_temperature
      return predicted_temperature
  
  # Test cases
  assert predict_temperature([21, 22, 20]) == 20.5
  assert predict_temperature([]) == 0
  assert predict_temperature([25, 24, 23]) == 23.5
  assert predict_temperature([15, 18, 20]) == 19
output: def predict_temperature(temperature_list):
      if not temperature_list:
          return 0
      alpha = 0.5
      predicted_temperature = temperature_list[-1]
      for temperature in temperature_list[:-1]:
          predicted_temperature = alpha*temperature + (1-alpha)*predicted_temperature
      return predicted_temperature