Expression.Product C# (CSharp) Method

Product() private static method

private static Product ( string expression, int &index ) : double
expression string
index int
return double
    private static double Product(string expression, ref int index)
    {
        double result = Power(expression, ref index);

        while(index < expression.Length)
        {
            if(expression[index] == '*' && expression[index + 1] != '*')
            {
                ++index;
                result *= Power(expression, ref index);
            }
            else if(expression[index] == '/')
            {
                ++index;
                result /= Power(expression, ref index);
            }
            else
            {
                break;
            }
        }

        return result;
    }

Usage Example

Example #1
0
        private Expression GetTemperatureValue()
        {
            if (isImperial)
            {
                return(Expression.Concat(Expression.Get("value"), Expression.Literal(DEGREES_F))); // For imperial we just need to add "F"
            }

            Expression value = Expression.ToNumber(Expression.Get("value"));  // value --> Number

            value = Expression.Subtract(value, Expression.ToNumber(32.0));    // value - 32
            value = Expression.Product(value, Expression.ToNumber(5.0));      // value * 5
            value = Expression.Division(value, Expression.ToNumber(9.0));     // value / 9
            value = Expression.Round(value);                                  // round to nearest int
            return(Expression.Concat(Expression.ToString(value), DEGREES_C)); // add C at the end
        }