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); }
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); }
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(); }