Exemplo n.º 1
0
        //aqui definimos los métodos - los comportamientos

        //aqui viene el constructor de la clase
        public ValidadorDocumento()
        {
            elDocumento         = new Documento();
            resultadoValidacion = "Documento sin validar";
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            int totalPersonas = 5; //Personas a las que se le validará el documento

            Console.WriteLine("Programa para validar documentos de identidad");
            Console.WriteLine("Se validará estructura y concordancia del documento para {0} personas", totalPersonas);

            //aqui declaramos el arreglo de documentos de Persona
            Documento[] losDocs = new Documento[totalPersonas];

            //Aqui hacemos el ciclo para capturar la información de los documentos
            int    contadorDocs = 0;
            string datoTipo, datoGenero;
            long   datoNumero;

            while (contadorDocs < totalPersonas)
            {
                try
                {
                    Console.WriteLine("\nIngresando información para la persona No. {0}", contadorDocs + 1);

                    Console.Write("Género de la persona: (F)emenino o (M)ásculino: ");
                    datoGenero = Console.ReadLine().ToUpper();
                    Console.Write("Tipo de documento: (T)arjeta o (C)édula: ");
                    datoTipo = Console.ReadLine().ToUpper();
                    Console.Write("Número del documento: ");
                    datoNumero = long.Parse(Console.ReadLine());

                    //aqui validamos el género
                    if (datoGenero != "F" && datoGenero != "M")
                    {
                        Console.WriteLine("Dato del género equivocado, intenta nuevamente!");
                    }

                    //aqui validamos el tipo de documento
                    if (datoTipo != "T" && datoTipo != "C")
                    {
                        Console.WriteLine("Dato del tipo de documento equivocado, intenta nuevamente!");
                    }

                    //aqui validamos que el número sea positivo
                    if (datoNumero <= 0)
                    {
                        Console.WriteLine("los números del documento deben ser positivos, intenta nuevamente!");
                    }

                    //Si están bien, se asignan
                    if ((datoGenero == "M" || datoGenero == "F") && (datoTipo == "T" || datoTipo == "C") && (datoNumero > 0))
                    {
                        losDocs[contadorDocs]        = new Documento();
                        losDocs[contadorDocs].Genero = datoGenero;
                        losDocs[contadorDocs].Tipo   = datoTipo;
                        losDocs[contadorDocs].Numero = datoNumero;

                        //como está correcto, seguimos con el siguiente documento
                        //esta es la condición de salida del ciclo de control
                        contadorDocs++;
                    }
                }
                catch (FormatException error)
                {
                    Console.WriteLine("El dato del número del documento está en formato errado. Intenta nuevamente");
                    Console.WriteLine(error.Message);
                }
            }

            Console.WriteLine("\nDocumentos ingresados, validando concordancia...");
            Console.WriteLine("------------------------------------------------\n");

            ValidadorDocumento miValidador = new ValidadorDocumento();

            for (int i = 0; i < losDocs.Length; i++)
            {
                Console.WriteLine("Persona No. {0}, género: {1}, tipo doc: {2}, número: {3}",
                                  i + 1,
                                  losDocs[i].Genero,
                                  losDocs[i].Tipo,
                                  losDocs[i].Numero);

                miValidador.ElDocumento = losDocs[i];

                Console.WriteLine("Resultado: {0}\n", miValidador.ResultadoValidacion);
            }

            Console.WriteLine("\nFin del programa.");
        }