コード例 #1
0
        static void RunMainLoop()
        {
            Console.Clear();
            Console.WriteLine("Введите выражение. " +
                              "Нажмите Enter чтобы вычислить\n");

            var expression = Console.ReadLine();

            calculator.Parse(expression);

            var msg = calculator.TryCalculate(out result) ?
                      $"Результат = {result}" :
                      "Выражение некорректно либо привело к ошибке";

            ShowResultPending(msg);
        }
コード例 #2
0
        // Ob - opening bracket, Cb - closing bracket для экономии длины
        public void Parse_ObOb2Plus3ClMul8CbDiv10_ReturnsTheSame()
        {
            inputString = "((2+3)*8)/10";

            mathExpression.Parse(inputString);
            var elements = mathExpression.GetCollection();

            Assert.Collection(elements, new Action <IExpressionElement>[]
            {
                elem => It.IsAny <IOpeningBracket>(),
                elem => It.IsAny <IOpeningBracket>(),
                elem => It.IsAny <IDynamicNumber>(),
                elem => It.IsAny <ICommand>(),
                elem => It.IsAny <IDynamicNumber>(),
                elem => It.IsAny <IClosingBracket>(),
                elem => It.IsAny <ICommand>(),
                elem => It.IsAny <IDynamicNumber>(),
                elem => It.IsAny <IClosingBracket>(),
                elem => It.IsAny <ICommand>(),
                elem => It.IsAny <IDynamicNumber>(),
            });
        }