Exemplo n.º 1
0
        private void SolveNestedEquation(ref List <ElementEquation> elements, ref int i)
        {
            double resultNested = SolveEquation(elements[i].NestedEquation);

            elements[i] = new ElementEquation(resultNested);
            if (elements.Count > (i + 1))
            {
                elements[i].Operation = elements[i + 1].Operation;
                elements.RemoveAt(i + 1);
                i--;
            }
        }
        public void MakeOperation_15Mul4_Return60()
        {
            // arrange
            ElementEquation elementsX = new ElementEquation(15, OperatorType.Mul);
            ElementEquation elementsY = new ElementEquation(4);
            OperatorType    operatorX = elementsX.Operation.Operator;
            double          exected   = 60;

            // act
            double actual = arithmeticCalculation.MakeOperation(elementsX, operatorX, elementsY);

            // assert
            Assert.AreEqual(actual, exected);
        }
Exemplo n.º 3
0
        public double MakeOperation(ElementEquation x, OperatorType operatorType, ElementEquation y)
        {
            double result = 0;

            switch (operatorType)
            {
            case OperatorType.Mul:
                result = x.Number * y.Number;
                break;

            case OperatorType.Del:
                result = x.Number / y.Number;
                break;

            case OperatorType.Sum:
                result = x.Number + y.Number;
                break;

            case OperatorType.Sub:
                result = x.Number - y.Number;
                break;
            }
            return(result);
        }