예제 #1
0
        void Scytale(bool encrypt, string text, string key)
        {
            InputText = text;

            int turns = 0;

            if (!int.TryParse(key, out turns))
            {
                string errorMsg;
                if (Language == "cs")
                {
                    errorMsg = "Klíč musí být číslo.";
                }
                else
                {
                    errorMsg = "Key must be a number";
                }

                throw new Exception(errorMsg);
            }

            if (encrypt)
            {
                Output = ScytaleCipher.Encrypt(text, turns);
            }
            else
            {
                Output = ScytaleCipher.Decrypt(text, turns);
            }
        }
예제 #2
0
        private void button2_Click(object sender, EventArgs e)
        {
            var scytale = new ScytaleCipher();
            var message = origintext.Text;

            if (diametr.Text == "")
            {
                outText.Text = "Ошибка! Неверные данные";
            }
            else
            {
                try
                {
                    var diameter = Convert.ToInt32(diametr.Text);
                }
                catch (System.FormatException)
                {
                    MessageBox.Show("Вы ввели символ! Пожалуйста,введите цифрy");
                    diametr.Text = "0";
                }
                int newdiametr = Convert.ToInt32(diametr.Text);
                if ((newdiametr <= 0) || (newdiametr >= origintext.Text.Length))
                {
                    outText.Text = "Ошибка! Неверные данные";
                }
                else
                {
                    var decText = scytale.Decrypt(message, newdiametr);
                    outText.Text = decText;
                }
            }
        }
예제 #3
0
    static void Main(string[] args)
    {
        ScytaleCipher scytale  = new ScytaleCipher();
        string        message  = "шифрование текста при помощи деревянного цилиндра ";
        int           diameter = 7;
        var           encText  = scytale.Encrypt(message, diameter);

        Console.WriteLine("Зашифрованный текст: {0}", encText);
        Console.WriteLine("Расшифрованный текст: {0}", scytale.Decrypt(encText, diameter));
        Console.ReadLine();
    }