/// <summary>
        /// Process one request.
        /// Must be one of: '+', '-', '/', '*' or a number in a double format.
        /// </summary>
        /// <param name="request"></param>
        public void ProcessSingleRequest(string request)
        {
            int size = data.GetSize();

            switch (request)
            {
            case "+":
            case "-":
            case "*":
            case "/":
                if (size < 2)
                {
                    ProcessError(request, 2);
                    return;
                }
                ProcessAction(request);
                break;

            case "_":
                if (size == 0)
                {
                    ProcessError(request, 1);
                    return;
                }
                data.RemoveElement();
                break;

            default:
                double number = Double.Parse(request);
                data.InsertElement(number);
                break;
            }
        }