public void CalculateFunction(bool isRignt)
        {
            if (state == OperationState.None)
            {
                return;
            }

            if (!isRignt)
            {
                if (state == OperationState.Inverse)
                {
                    leftOperand = leftOperand.Inverse();
                }
                if (state == OperationState.Square)
                {
                    leftOperand = leftOperand.Square();
                }
            }
            else
            {
                if (state == OperationState.Inverse)
                {
                    rightOperand = rightOperand.Inverse();
                }
                if (state == OperationState.Square)
                {
                    rightOperand = rightOperand.Square();
                }
            }
        }
        public void ResetProcessor()
        {
            leftOperand  = new TPNumber(0, 10, 0);
            rightOperand = new TPNumber(0, 10, 0);

            ResetOperation();
        }
        public void Remove(TANumber otherNumber)
        {
            if (State == FState.Off)
            {
                number = otherNumber.Copy();
            }
            else
            {
                number = otherNumber.Subtract(number);
            }

            State = FState.On;
        }
        public void Add(TANumber otherNumber)
        {
            if (State == FState.Off)
            {
                number = otherNumber.Copy();
            }
            else
            {
                number = otherNumber.Add(number);
            }

            State = FState.On;
        }
        public void Operate()
        {
            if (state == OperationState.None)
            {
                return;
            }

            if (state == OperationState.Add)
            {
                leftOperand = leftOperand.Add(rightOperand);
            }
            else if (state == OperationState.Subtract)
            {
                leftOperand = leftOperand.Subtract(rightOperand);
            }
            else if (state == OperationState.Multiply)
            {
                leftOperand = leftOperand.Multiply(rightOperand);
            }
            else if (state == OperationState.Divide)
            {
                leftOperand = leftOperand.Divide(rightOperand);
            }
        }
 public void Clear()
 {
     State  = FState.Off;
     number = new TPNumber(0, 10, 1);
 }
        public void Store(TANumber number)
        {
            this.number = number.Copy();

            State = FState.On;
        }
 public Memory()
 {
     State  = FState.Off;
     number = new TPNumber(0, 10, 1);
 }