function q = quartiles(x)
  % returns a vector with the first, second, and third quartile
  % of the vector x
  xs = sort(x);
  if (length(xs) == 0)                          % no data
    q = [];
  elseif (rem(length(xs), 2) == 0)              % even number of data
    index = length(xs)/2;
    m = (xs(index) + xs(index+1))/2;
    q = [round(xs(length(xs)/4)), m, xs(round(3*length(xs)/4))];
  else                                          % odd number of data
    index = (length(xs) + 1)/2;
    m = xs(index);
    q = [round(xs(length(xs)/4)), m, xs(round(3*length(xs)/4))];
  end
end