Exemplo n.º 1
0
        public void ParseStringToLists()
        {
            string newValue    = string.Empty;
            string lastOperand = string.Empty;

            for (int i = 0; i < Value.Length; i++)
            {
                if (i == 0 && Value[i] == NEGATIVE)
                {
                    newValue += Value[i];
                    continue;
                }

                updateBracketsBalance(Value[i]);
                if (bracketsBalance == 0 &&
                    (isBracketOpening(Value[i]) || isBracketClosing(Value[i])))
                {
                    continue;
                }

                if (Value[i] == ADD || Value[i] == SUBTRACT)
                {
                    if (i == 0 || i == Value.Length - 1)
                    {
                        continue;
                    }
                    ParsedValues.Add(new ParsedSet(newValue, lastOperand));
                    lastOperand = Value[i].ToString();
                }
                else
                {
                    newValue += Value[i];
                }
            }
        }
Exemplo n.º 2
0
 public void FillAllInfo()
 {
     IsValid = LineHelper.IsValid(Source);
     if (!IsValid)
     {
         return;
     }
     SourceValues = LineHelper.Separate(Source);
     if (SourceValues.Any())
     {
         ParsedValues = LineHelper.Parse(SourceValues).ToList();
     }
     if (ParsedValues.Any())
     {
         Sum = ParsedValues.Sum();
     }
 }