private static List<ElementCipher> BuildCipher(string cipherToDecode)
    {
        List<ElementCipher> elements = new List<ElementCipher>();
        char? letter = null;
        StringBuilder digits = new StringBuilder();

        foreach (var currentChar in cipherToDecode)
        {
            if (char.IsLetter(currentChar))
            {
                if (letter != null)
                {
                    ElementCipher newElement = new ElementCipher();
                    newElement.Letter = letter.Value;
                    newElement.Digit = digits.ToString();
                    elements.Add(newElement);
                    digits.Clear();
                }
                letter = currentChar;
            }
            else
            {
                digits.Append(currentChar);
            }
        }
        ElementCipher lastElement = new ElementCipher();
        lastElement.Letter = letter.Value;
        lastElement.Digit = digits.ToString();
        elements.Add(lastElement);
        digits.Clear();

        return elements;
    }
Exemplo n.º 2
0
    private static List <ElementCipher> BuildCipher(string cipherToDecode)
    {
        List <ElementCipher> elements = new List <ElementCipher>();
        char?         letter          = null;
        StringBuilder digits          = new StringBuilder();

        foreach (var currentChar in cipherToDecode)
        {
            if (char.IsLetter(currentChar))
            {
                if (letter != null)
                {
                    ElementCipher newElement = new ElementCipher();
                    newElement.Letter = letter.Value;
                    newElement.Digit  = digits.ToString();
                    elements.Add(newElement);
                    digits.Clear();
                }
                letter = currentChar;
            }
            else
            {
                digits.Append(currentChar);
            }
        }
        ElementCipher lastElement = new ElementCipher();

        lastElement.Letter = letter.Value;
        lastElement.Digit  = digits.ToString();
        elements.Add(lastElement);
        digits.Clear();

        return(elements);
    }