예제 #1
0
        public CalculateOption GetCalculateOption()
        {
            CalculateOption calculateOption = CalculateOption.None;

            _logger.Log("Wprowadź odpowiednią opcje: \n 1.Dodawanie \n 2.Odejmowanie");
            int option = GetNumber();

            while (option != 1 && option != 2)
            {
                _logger.Log("Wprowadziłeś złą opcję. Wyberz 1 lub 2.");
                option = GetNumber();
            }

            if (option == 1)
            {
                calculateOption = CalculateOption.Add;
            }

            if (option == 2)
            {
                calculateOption = CalculateOption.Substract;
            }

            return(calculateOption);
        }
예제 #2
0
        public int Calculate(CalculateOption option, int firstNumber, int secondNUmber)
        {
            ICalculateStrategy strategy;

            switch (option)
            {
            case CalculateOption.Add:
                strategy = new AddStrategy();
                break;

            case CalculateOption.Substract:
                strategy = new SubstractorStrategy();
                break;

            default:
                string message = "Nie wybrałeś odpowiedniej opcji. Wybierz 1 lub 2.";
                _logger.Log(message);
                throw new NotSupportedException(message);
            }

            int result = strategy.Calculate(firstNumber, secondNUmber);

            _logger.Log("Wynik obliczeń: " + result);

            return(result);
        }
예제 #3
0
파일: Program.cs 프로젝트: rafal-broda/apka
        static void RunCalculator()
        {
            Console.WriteLine("Proszę, wprowadź pierwszą liczbę.");
            int firtNumber = _printer.GetNumber();

            Console.WriteLine("Proszę, wprowadź drugą cyfrę.");
            int secondNUmber = _printer.GetNumber();

            CalculateOption option = _printer.GetCalculateOption();

            _calculator.Calculate(option, firtNumber, secondNUmber);

            Console.WriteLine("Aby zakończyć wciśnij dowolny przycisk");
            Console.ReadKey();
        }