private static void Main(string[] args) { string input = ""; do { PrintMenu(); input = Console.ReadLine(); string source = ReadTextFromFile(); if (source == "") { Console.WriteLine("Ошибка! Введите кодируемую строку в файл input.txt"); Console.ReadKey(); continue; } if (input == "10") { Console.WriteLine("Сравнение коэффицентов сжатия:"); foreach (IAlgorithm alg in AlgorithmsList) { alg.Encode(source); Console.WriteLine("{0}: {1:0.000}", alg.GetName(), alg.GetCompressionRatio()); } Console.WriteLine(); continue; } _algorithm = ParseAlgorithm(input); if (_algorithm == null) { continue; } string encodeString = _algorithm.Encode(source); Console.WriteLine("Алгоритм: {0}", _algorithm.GetName()); Console.WriteLine("Исходная строка:"); Console.WriteLine(source); Console.WriteLine("Закодированная строка:"); Console.WriteLine(encodeString); Console.WriteLine("Полученный коэффицент сжатия: {0:0.000}", _algorithm.GetCompressionRatio()); Console.WriteLine("Раскодированная строка:"); Console.WriteLine(_algorithm.Decode(encodeString)); Console.WriteLine(); } while (input != "q"); }