예제 #1
0
        public static BinEncoding StrToBinEncoding(String strEncoding)
        {
            BinEncoding encoding = null;

            switch (strEncoding)
            {
                case "Прямой": encoding = new DirectEncoding(); break;
                case "Обратный": encoding = new ReversEncoding(); break;
                case "Дополнительный": encoding = new AdditionalEncoding(); break;
                default:
                    throw new ArgumentException("Неверное строковое значение кодировки!");
            }

            return encoding;
        }
예제 #2
0
        public static BinEncoding GenerateRandomEncoding()
        {
            BinEncoding randomBinEncoding = null;
            int iEncoding = new Random((int)DateTime.Now.Ticks).Next(0, 10000) % 3;

            switch (iEncoding)
            {
                case ENCODING_DIRECT: randomBinEncoding = new DirectEncoding(); break;
                case ENCODING_REVERS: randomBinEncoding = new ReversEncoding(); break;
                case ENCODING_ADDITIONAL: randomBinEncoding = new AdditionalEncoding(); break;
                default:
                    throw new ArgumentException("Ошибка во время генерации случайной кодировки бинарного числа! ");
            }

            return randomBinEncoding;
        }