input: Write a function to compute the moving average of time-series data points.
  assert moving_average([3, 5, 7, 2, 8, 10, 11, 65, 72, 81, 99, 100, 150], 3) == [3.0, 4.0, 5.0, 4.666666666666667, 5.666666666666667, 6.666666666666667, 9.666666666666666, 28.666666666666668, 49.333333333333336, 72.66666666666667, 84.0, 93.33333333333333, 116.33333333333333]
  assert moving_average([10, 20, 30, 40, 50, 60, 70, 80, 90, 100], 4) == [10.0, 15.0, 20.0, 25.0, 35.0, 45.0, 55.0, 65.0, 75.0, 85.0]
  assert moving_average([1, 2, 3, 4, 5], 1) == [1.0, 2.0, 3.0, 4.0, 5.0]
  assert moving_average([], 5) == []
output: def moving_average(data, window_size):
      if not data:
          return []
      result = []
      for i in range(len(data)):
          if i < window_size - 1:
              result.append(sum(data[:i+1]) / (i+1))
          else:
              result.append(sum(data[i-window_size+1:i+1]) / window_size)
      return result