Exemplo n.º 1
0
        private char CalculateCheckDigit(string partialFiscalCode)
        {
            var temporaryFiscalCode = partialFiscalCode;

            if (temporaryFiscalCode.Length != 15)
            {
                throw new ArgumentException("An error occurred. Invalid length in temporary fiscal code");
            }

            var accumulator = 0;

            for (var i = 0; i < temporaryFiscalCode.Length; i++)
            {
                if ((i + 1) % 2 == 0)
                {
                    accumulator += CommonDataStructures.EvenPositionMap[temporaryFiscalCode[i]];
                }
                else
                {
                    accumulator += CommonDataStructures.OddPositionMap[temporaryFiscalCode[i]];
                }
            }

            return(CommonDataStructures.GetCheckDigit(accumulator));
        }
Exemplo n.º 2
0
        public char CalculateCheckDigit()
        {
            string partialCode = GetPartialCode();
            var    checkDigit  =
                CommonDataStructures.GetCheckDigit(CommonDataStructures.GetAccumulationResult(partialCode));

            return(checkDigit);
        }