Пример #1
0
        private void ShowMenu()
        {
            Console.WriteLine("Choose your calculator:");
            Console.WriteLine("1) Digit calculator\n2) Complex calculator\n3) Exit");

            try
            {
                var calcType = Convert.ToInt32(Console.ReadLine());
                Console.Clear();
                if (calcType == 1)
                {
                    var digitCalculator = new ConsoleCalculator((DigitCalculator)CalculatorFactory.Create(CalculatorTypeEnum.Digit));
                    digitCalculator.ShowCalculator();
                }
                if (calcType == 2)
                {
                    var complexCalculator = new ConsoleCalculator((ComplexCalculator)CalculatorFactory.Create(CalculatorTypeEnum.Complex));
                    complexCalculator.ShowCalculator();
                }
                if (calcType == 3)
                {
                    Environment.Exit(0);
                }
            }
            catch (Exception)
            {
                Console.Clear();
                ShowMenu();
            }
        }
Пример #2
0
        //args
        //Array of 2 strings
        // Index 0 : bool - require 2 items
        //          true - Only allow 2
        //          false - allow many items
        // Index 1 : string of items
        //          string wrapped by ""
        //          Example: ConsoleApp1 true ""33,33,55,666, 1000,10025""
        static int Main(string[] args)
        {
            CalculatorFactory calc = new CalculatorFactory();

            string display = string.Empty;

            ICalcParser parser;

            if (bool.Parse(args[0]) == true)
            {
                parser = calc.GetParser(CalculationTypes.Max2Items);
            }
            else
            {
                parser = calc.GetParser(CalculationTypes.AnyNumberItems);
            }

            int sum = parser.Add(args[1], ref display);

            Console.WriteLine("Total is: " + sum.ToString());
            Console.WriteLine(display);
            return(sum);
        }