public void Run() { Console.WriteLine("Введите через пробел количестов сбитых кегль в фрейме."); Console.WriteLine("Введите help для получения списка команд."); while (true) { try { Console.Write("Фрейм №{0}: ", game.Frames.Count + 1); var key = Console.ReadLine().ToLower(); if (commands.Keys.Contains(key)) { commands[key]?.Invoke(game); Console.WriteLine(); continue; } var shots = key .Trim(' ') .Split(' ') .Where(s => s.Length != 0) .Select(s => int.Parse(s)) .ToArray(); game.AddFrame(shots); } catch (ArgumentException e) { Console.WriteLine(e.Message); } catch (FormatException) { Console.WriteLine("Неизвестная команда. Используйте help для получения списка команд."); } } }