Exemplo n.º 1
0
        Enigma _create(Char rotor1, Char rotor2, Char rotor3, Char? rotor4 = null)
        {
            var machine = new Enigma();
            machine.Reflector = Enigma.Reflector_B();
            machine.Rotor_1 = Enigma.Rotor_III();
            machine.Rotor_2 = Enigma.Rotor_I();
            machine.Rotor_3 = Enigma.Rotor_IV();

            machine.Rotor_1.InitialPosition = rotor1;
            machine.Rotor_2.InitialPosition = rotor2;
            machine.Rotor_3.InitialPosition = rotor3;
            if (rotor4 != null)
            {
                machine.Rotor_4.InitialPosition = rotor4.Value;
            }
            machine.Initialize();
            return machine;
        }
Exemplo n.º 2
0
        static Enigma CreateSampleEnigma()
        {
            var enigma = new Enigma();
            enigma.Reflector = Enigma.Reflector_A();
            enigma.Rotor_1 = Enigma.Rotor_III();
            enigma.Rotor_2 = Enigma.Rotor_I();
            enigma.Rotor_3 = Enigma.Rotor_V();

            enigma.Rotor_1.InitialPosition = 'F';
            enigma.Rotor_2.InitialPosition = 'T';
            enigma.Rotor_3.InitialPosition = 'W';

            enigma.PlugBoard.AddPlug('f', 'q');
            enigma.PlugBoard.AddPlug('t', 's');
            enigma.PlugBoard.AddPlug('a', 'z');
            enigma.PlugBoard.AddPlug('g', 'j');
            enigma.PlugBoard.AddPlug('m', 'n');
            enigma.PlugBoard.AddPlug('b', 'o');

            enigma.Initialize();
            return enigma;
        }