public static void ShowConsoleMenu(string[] inputParams) { bool isNewTry = false; do { if (isNewTry) { inputParams = AskInputParams(InputData.CountParams); isNewTry = false; } if (!Validator.IsValid(inputParams)) { Console.WriteLine("Your data is not valid"); if (!AskBoolValue("Do you want to retype them?", new string[] { "YES", "Y" })) { break; } inputParams = AskInputParams(InputData.CountParams); continue; } InputData inputData = Parser.Parse(inputParams); if (inputData.AlgorithmsArr.Length == 0) { Console.WriteLine("Your file doesn`t have key words?"); if (!AskBoolValue("Do you want to choose another file?", new string[] { "YES", "Y" })) { break; } inputParams = AskInputParams(InputData.CountParams); continue; } var factory = new LuckyTicketDeterminatorFactory(); var counter = new LuckyTicketCounter(factory); PrintKeyValueArr("Number of lucky tickets: ", inputData.AlgorithmsArr, counter.GetRangeCountLuckyTickets(inputData.AlgorithmsArr)); if (AskBoolValue("Do you want to continue?", new string[] { "YES", "Y" })) { isNewTry = true; } else { break; } } while (true); }