//----- Metodo Informar del ejercicio 17, Practica 1 -----
        public static void Informar(IColeccionable coleccionable)
        {
            Console.WriteLine("Elementos: " + coleccionable.Cuantos());
            Console.WriteLine("Minimo: " + coleccionable.Minimo()); //Por defecto informa cual es el menor promedio
            Console.WriteLine("Maximo: " + coleccionable.Maximo()); //Por defecto informa cual es el mayor promedio

            Console.WriteLine("Escribir nombre...");
            string nombre = Console.ReadLine();

            Console.WriteLine("Escribir dni...");
            int dni = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Escribir legajo...");
            int legajo = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Escribir promedio...");
            double promedio = Convert.ToDouble(Console.ReadLine());

            IComparable alumno = new Alumno(nombre, dni, legajo, promedio);

            if (coleccionable.Contiene(alumno))
            {
                Console.WriteLine("El elemento leído esta en la coleccion");
            }
            else
            {
                Console.WriteLine("El elemento leído no está en la colección");
            }
        }
示例#2
0
 public static void imprimirElementosDiccionario(IColeccionable<ClaveValor> coleccion)
 {
     IIterator iter = coleccion.CreateIterator();
     while (!iter.EsFin())
     {
         Alumno elemento = (Alumno)iter.Siguiente();
         Console.WriteLine("Alumno: {0}\tDNI: {1}\tLegajo: {2}\tPromedio: {3}",
              elemento.Nombre, elemento.DNI, elemento.Legajo, elemento.Promedio);
     }
 }
示例#3
0
        //******************************
        //Ej9
        public static void cambioEstrategia(IColeccionable <Persona> personas, IStrategy <Persona> estrategia)
        {
            IIterator iter = personas.CreateIterator();

            while (!iter.EsFin())
            {
                Persona unaPersona = (Persona)iter.Siguiente();
                unaPersona.Estrategia = estrategia;
            }
        }
示例#4
0
        public static void llenarAlumnos(IColeccionable <I_Comparable> coleccion)
        {
            Generar generar = new Generar();

            for (int i = 0; i < 20; i++)
            {
                Alumno unAlumno = new Alumno(generar.Gen_Nombre(), generar.Gen_DNI(), generar.Gen_Legajo(), generar.Gen_Promedio());
                coleccion.agregar(unAlumno);
            }
        }
示例#5
0
        public static void llenarPersonas(IColeccionable <I_Comparable> coleccion)
        {
            Generar generar = new Generar();

            for (int i = 0; i < 20; i++)
            {
                Persona unaPersona = new Persona(generar.Gen_Nombre(), generar.Gen_DNI());
                coleccion.agregar(unaPersona);
            }
        }
示例#6
0
        public static void llenarAlumnosDiccionario(IColeccionable <ClaveValor> coleccion)
        {
            Generar generar = new Generar();

            for (int i = 0; i < 20; i++)
            {
                Alumno unAlumno = new Alumno(generar.Gen_Nombre(), generar.Gen_DNI(), generar.Gen_Legajo(), generar.Gen_Promedio());
                ((Diccionario)coleccion).agregar(unAlumno);
            }
        }
示例#7
0
文件: Main.cs 项目: ramircar2020/MDP1
        static void llenar(IColeccionable coleccion)
        {
            Random rnd = new Random();

            for (int i = 0; i < 20; i++)
            {
                IComparable llenado = new Numero(rnd.Next(1, 101));
                coleccion.agregar(llenado);
            }
        }
示例#8
0
        //----- Ejercicio 6 -----
        public static void Llenar(IColeccionable coleccionable, int opcion)
        {
            int cantVeces = 0;

            while (cantVeces < 20)
            {
                IComparable comparable = FabricaDeComparables.crearAleatorio(opcion);
                coleccionable.Agregar(comparable);
                cantVeces++;
            }
        }
示例#9
0
        public static void jornadaDeVentas(IColeccionable <I_Comparable> coleccion)
        {
            double    monto;
            IIterator iter = coleccion.CreateIterator();

            while (!iter.EsFin())
            {
                Vendedor elemento = (Vendedor)iter.Siguiente();
                monto = new GeneradorDeDatosAleatorios().numeroAleatorio(7000);
                elemento.venta(monto);
            }
        }
示例#10
0
        //----- Ejercicio 6, Practica 3-----
        public static void Llenar(IColeccionable coleccionable, int opcion)
        {
            GeneradorDeDatosAleatorios g = new GeneradorDeDatosAleatorios();
            int cantVeces = 0;

            while (cantVeces < 20)
            {
                IAlumno alumno = new AlumnoProxy(opcion, g.stringAleatorio(5), g.numeroAleatorio(1000));
                coleccionable.Agregar(alumno);
                cantVeces++;
            }
        }
示例#11
0
文件: Main.cs 项目: ramircar2020/MDP1
        static void llenarPersonas(IColeccionable coleccion)
        {
            Random rnd = new Random();

            for (int i = 0; i < 20; i++)
            {
                string      nombre  = Path.GetRandomFileName();
                int         dni     = rnd.Next(20000000, 44000000);
                IComparable persona = new Persona(nombre, dni);
                coleccion.agregar(persona);
            }
        }
示例#12
0
        public static void informar(IColeccionable <I_Comparable> coleccion)
        {
            // Ejercicio 10 practica 2
            I_Comparable maximo = coleccion.maximo();
            I_Comparable minimo = coleccion.minimo();

            Console.WriteLine("Elementos de la Coleccion:\n" +
                              "Maximo:\n\tAlumno: {0}\tDNI: {1}\tLegajo: {2}\tPromedio: {3}\n" +
                              "Minimo:\n\tAlumno: {4}\tDNI: {5}\tLegajo: {6}\tPromedio: {7}",
                              ((AbsAlumno)maximo).Nombre, ((AbsAlumno)maximo).DNI, ((AbsAlumno)maximo).Legajo, ((AbsAlumno)maximo).Promedio,
                              ((AbsAlumno)minimo).Nombre, ((AbsAlumno)minimo).DNI, ((AbsAlumno)minimo).Legajo, ((AbsAlumno)minimo).Promedio);
        }
示例#13
0
        public static void informar(IColeccionable <Persona> coleccion)
        {
            Alumno maximo = (Alumno)coleccion.maximo();
            Alumno minimo = (Alumno)coleccion.minimo();

            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("\tElementos de la Coleccion:");
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("\tMaximo:\n\t\tAlumno: {0}\tDNI: {1}\tLegajo: {2}\tPromedio: {3}\n" +
                              "\tMinimo:\n\t\tAlumno: {4}\tDNI: {5}\tLegajo: {6}\tPromedio: {7}",
                              maximo.Nombre, maximo.DNI, maximo.Legajo, maximo.Promedio,
                              minimo.Nombre, minimo.DNI, minimo.Legajo, minimo.Promedio);
        }
示例#14
0
        //----- Ejercicio 5 -----
        public static void Llenar(IColeccionable coleccionable)
        {
            int    cantVeces = 0;
            Random r         = new Random();

            while (cantVeces < 20)
            {
                int         nro        = r.Next(1, 50);
                IComparable comparable = new Numero(nro);
                coleccionable.Agregar(comparable);
                cantVeces++;
            }
        }
示例#15
0
        public static void llenar(IColeccionable <I_Comparable> coleccion, int eleccion)
        {
            //Ejercicio 6 practica 3
            // Elecciones: Persona(1) / Alumno(2) / Numero(3) / ClaveValor(4) / Vendedor(5) / AlumnoMuyEstudioso(6)
            switch (eleccion)
            {
            case 1:
                for (int i = 0; i < 20; i++)
                {
                    coleccion.agregar(new Persona(GeneradorDeDatosAleatorios.getInstance(null).stringAleatorio(15), GeneradorDeDatosAleatorios.getInstance(null).numeroAleatorio(44000000)));
                }
                break;

            case 2:
                for (int i = 0; i < 20; i++)
                {
                    coleccion.agregar(new FabricaAlumno().crearAleatorio());
                }
                break;

            //case 4:
            //    for (int i = 0; i < 20; i++)
            //    {
            //        coleccion.agregar(new FabricaClaveValor().crearAleatorio());
            //    }
            //    break;
            case 3:
                for (int i = 0; i < 20; i++)
                {
                    coleccion.agregar(new FabricaNumero().crearAleatorio());
                }
                break;

            case 5:     // Ejercicio 6 Practica 3: Implemente una fábrica concreta para la clase Vendedor y compruebe el correcto funcionamiento del método main del ejercicio 6.Compare a los vendedores por el campo bonus.
                for (int i = 0; i < 20; i++)
                {
                    coleccion.agregar(new FabricaVendedor().crearAleatorio());
                }
                break;

            case 6:     // Ejercicio 10 Practica 5: Llenar una coleccion con alumnos muy estudiosos
                for (int i = 0; i < 20; i++)
                {
                    coleccion.agregar(new FabricaAlumnoMuyEstudioso().crearAleatorio());
                }
                break;

            default:
                break;
            }
        }
示例#16
0
文件: Main.cs 项目: ramircar2020/MDP1
        static void llenarAlumnos(IColeccionable coleccion)
        {
            Random rnd = new Random();

            for (int i = 0; i < 20; i++)
            {
                string      nombre   = Path.GetRandomFileName();
                int         dni      = rnd.Next(20000000, 44000000);
                int         legajo   = rnd.Next(1, 999999);
                int         promedio = rnd.Next(1, 10);
                IComparable alumno   = new Alumno(nombre, dni, legajo, promedio);
                coleccion.agregar(alumno);
            }
        }
示例#17
0
        public static void llenarVendedores(IColeccionable coleccionable, Gerente gerente, int opcion)
        {
            int cantVeces = 0;

            while (cantVeces < 20)
            {
                Vendedor vendedor = (Vendedor)FabricaDeComparables.crearAleatorio(opcion);
                //Mediante el método Agregar de la clase Vendedor, un gerente es observador de todos los vendedores
                vendedor.Agregar(gerente);
                coleccionable.Agregar(vendedor);

                cantVeces++;
            }
        }
示例#18
0
        //----- Ejercicio 12 -----
        public static void LlenarPersonas(IColeccionable coleccionable)
        {
            //Revisar la parte de nombres al azar
            Random r         = new Random();
            int    cantVeces = 0;

            while (cantVeces < 20)
            {
                int         dni        = r.Next(1, 50);
                IComparable comparable = new Persona("abcdef", dni);
                coleccionable.Agregar(comparable);
                cantVeces++;
            }
        }
示例#19
0
        //----- Ejercicio 16 -----
        public static void LlenarAlumnos(IColeccionable coleccionable)
        {
            //Revisar la parte de nombres al azar
            int    cantVeces = 0;
            Random r         = new Random();

            while (cantVeces < 20)
            {
                int         dni        = r.Next(1, 50);
                int         leg        = r.Next(1, 25);
                int         prom       = r.Next(1, 10);
                IComparable comparable = new Alumno("ghijk", dni, leg, prom);
                coleccionable.Agregar(comparable);
                cantVeces++;
            }
        }
示例#20
0
        //----- Ejercicio 6 -----
        public static void Informar(IColeccionable coleccionable, int opcion)
        {
            Console.WriteLine("Elementos: " + coleccionable.Cuantos());
            Console.WriteLine("Minimo: " + coleccionable.Minimo());
            Console.WriteLine("Maximo: " + coleccionable.Maximo());

            IComparable comparable = FabricaDeComparables.crearPorTeclado(opcion);

            if (coleccionable.Contiene(comparable))
            {
                Console.WriteLine("El elemento leído esta en la coleccion");
            }
            else
            {
                Console.WriteLine("El elemento leído no está en la colección");
            }
        }
        //----- Ejercicio 2 ----- (Modificación del Ejercicio 16 de la Practica 1)
        public static void LlenarAlumnos(IColeccionable coleccionable, IEstrategiaDeComparacion iedc)
        {
            //Revisar la parte de nombres al azar
            int    cantVeces = 0;
            Random r         = new Random();

            while (cantVeces < 20)
            {
                int    dni        = r.Next(1, 50);
                int    leg        = r.Next(1, 25);
                int    prom       = r.Next(1, 10);
                Alumno comparable = new Alumno("ghijk", dni, leg, prom);
                //Lo que recibe por parametro es una estrategia de comparacion por Legajo
                comparable.setEstrategia(iedc);
                coleccionable.Agregar(comparable);
                cantVeces++;
            }
        }
示例#22
0
        //----- Ejercicio 6 -----
        public static void Informar(IColeccionable coleccionable)
        {
            Console.WriteLine("Elementos: " + coleccionable.Cuantos());
            Console.WriteLine("Minimo: " + coleccionable.Minimo());
            Console.WriteLine("Maximo: " + coleccionable.Maximo());
            Console.WriteLine("Escribir numero...");

            int valor = Convert.ToInt32(Console.ReadLine());

            IComparable numero = new Numero(valor);

            if (coleccionable.Contiene(numero))
            {
                Console.WriteLine("El elemento leído esta en la coleccion");
            }
            else
            {
                Console.WriteLine("El elemento leído no está en la colección");
            }
        }
示例#23
0
        //----- Metodo Informar para el ejercicio 13 -----
        public static void InformarPersona(IColeccionable coleccionable)
        {
            Console.WriteLine("Elementos: " + coleccionable.Cuantos());
            Console.WriteLine("Minimo: " + coleccionable.Minimo()); //menor dni
            Console.WriteLine("Maximo: " + coleccionable.Maximo()); //mayor dni

            Console.WriteLine("Escribir nombre...");
            string nombre = Console.ReadLine();

            Console.WriteLine("Escribir dni...");
            int dni = Convert.ToInt32(Console.ReadLine());

            IComparable persona = new Persona(nombre, dni);

            if (coleccionable.Contiene(persona))
            {
                Console.WriteLine("El elemento leído esta en la coleccion");
            }
            else
            {
                Console.WriteLine("El elemento leído no está en la colección");
            }
        }
示例#24
0
        public static void informar(IColeccionable <I_Comparable> coleccion, int opcion)
        {
            // Ejercicio 6 practica 3
            // Elecciones: Persona(1) / Alumno(2) / ClaveValor(3) / Numero(4)

            switch (opcion)
            {
            case 1:
                Persona maximo_p = (Persona)coleccion.maximo();
                Persona minimo_p = (Persona)coleccion.minimo();
                Console.WriteLine("Cantidad de Elementos de la Coleccion: {0}\n" +
                                  "Maximo:\n\tNombre: {1}\tDNI: {2}\n" +
                                  "Minimo:\n\tNombre: {3}\tDNI: {4}",
                                  coleccion.cuantos(),
                                  maximo_p.Nombre, maximo_p.DNI,
                                  minimo_p.Nombre, minimo_p.DNI);
                Console.Write("\nPor favor, ingrese un DNI para saber si se encuentra dentro de la coleccion: ");
                int     input       = new LectorDeDatos(null).numeroPorTeclado();
                Persona newElemento = new Persona("Usuario", input);
                newElemento.Estrategia = new StratComparacion_DNI();
                if (coleccion.contiene(newElemento))
                {
                    Console.WriteLine("\nEl elemento leido esta en la coleccion");
                }
                else
                {
                    Console.WriteLine("\nEl elemento leido no se encuentra en la coleccion");
                }
                break;

            case 2:
                Alumno maximo_a = (Alumno)coleccion.maximo();
                Alumno minimo_a = (Alumno)coleccion.minimo();
                Console.WriteLine("Cantidad de Elementos de la Coleccion: {0}\n" +
                                  "Maximo:\n\tAlumno: {1}\tDNI: {2}\tLegajo: {3}\tPromedio: {4}\n" +
                                  "Minimo:\n\tAlumno: {5}\tDNI: {6}\tLegajo: {7}\tPromedio: {8}",
                                  coleccion.cuantos(),
                                  maximo_a.Nombre, maximo_a.DNI, maximo_a.Legajo, maximo_a.Promedio,
                                  minimo_a.Nombre, minimo_a.DNI, minimo_a.Legajo, minimo_a.Promedio);
                Console.Write("\nPor favor, ingrese un DNI para saber si se encuentra dentro de la coleccion: ");
                input                  = new LectorDeDatos(null).numeroPorTeclado();
                newElemento            = new Persona("Usuario", input);
                newElemento.Estrategia = new StratComparacion_DNI();
                if (coleccion.contiene(newElemento))
                {
                    Console.WriteLine("\nEl elemento leido esta en la coleccion");
                }
                else
                {
                    Console.WriteLine("\nEl elemento leido no se encuentra en la coleccion");
                }
                break;

            //case 3:
            //    ClaveValor maximo_cv = (ClaveValor)coleccion.maximo();
            //    ClaveValor minimo_cv = (ClaveValor)coleccion.minimo();
            //    Console.WriteLine("Cantidad de Elementos de la Coleccion: {0}\n" +
            //        "Maximo:\n\tNombre: {1}\tDNI: {2}\n" +
            //        "Minimo:\n\tNombre: {3}\tDNI: {4}",
            //             coleccion.cuantos(),
            //             ((Persona)maximo_cv.valor).Nombre, ((Persona)maximo_cv.valor).DNI,
            //             ((Persona)minimo_cv.valor).Nombre, ((Persona)minimo_cv.valor).DNI);
            //    Console.Write("\nPor favor, ingrese un DNI para saber si se encuentra dentro de la coleccion: ");
            //    input = new LectorDeDatos().numeroPorTeclado();
            //    newElemento = new Persona("Usuario", input);
            //    newElemento.Estrategia = new StratComparacion_DNI();
            //    if (coleccion.contiene(newElemento))
            //        Console.WriteLine("\nEl elemento leido esta en la coleccion");
            //    else
            //        Console.WriteLine("\nEl elemento leido no se encuentra en la coleccion");
            //    break;
            case 3:
                Numero maximo_nro = (Numero)coleccion.maximo();
                Numero minimo_nro = (Numero)coleccion.minimo();
                Console.WriteLine("Cantidad de Elementos de la Coleccion: {0}\n" +
                                  "Maximo:\n\tNumero: {1}\n" +
                                  "Minimo:\n\tNumero: {2}\n",
                                  coleccion.cuantos(),
                                  maximo_nro.Valor, minimo_nro.Valor);
                Console.Write("\nPor favor, ingrese un Numero para saber si se encuentra dentro de la coleccion: ");
                input = new LectorDeDatos(null).numeroPorTeclado();
                Numero newElemento_nro = new Numero(input);
                //newElemento_nro.Estrategia = new StratComparacion_DNI();
                if (coleccion.contiene(newElemento_nro))
                {
                    Console.WriteLine("\nEl elemento leido esta en la coleccion");
                }
                else
                {
                    Console.WriteLine("\nEl elemento leido no se encuentra en la coleccion");
                }
                break;

            case 5:
                Vendedor maximo_vend = (Vendedor)coleccion.maximo();
                Vendedor minimo_vend = (Vendedor)coleccion.minimo();
                Console.WriteLine("Cantidad de Elementos de la Coleccion: {0}\n" +
                                  "Maximo:\n\tNombre: {1}\n" +
                                  "Minimo:\n\tNombre: {2}\n",
                                  coleccion.cuantos(),
                                  maximo_vend.Nombre, minimo_vend.Nombre);
                Console.Write("\nPor favor, ingrese puntos de Bonus para saber si se encuentra dentro de la coleccion: ");
                double   puntos           = Convert.ToDouble(Console.ReadLine());
                Vendedor newElemento_vend = new Vendedor(GeneradorDeDatosAleatorios.getInstance(null).stringAleatorio(15),
                                                         GeneradorDeDatosAleatorios.getInstance(null).numeroAleatorio(44000000),
                                                         GeneradorDeDatosAleatorios.getInstance(null).numeroAleatorio(60000));
                newElemento_vend.Bonus = puntos;    //Comentando esta linea de codigo, entrará en el if (considerando que primero, el vendedor, debe
                                                    //sumar ventas antes de ser comparado, ya que todos comienzan con puntos de bonus en 1.0)
                                                    //A menos que el usuario ingrese los puntos 1.0

                //newElemento_nro.Estrategia = new StratComparacion_DNI();
                if (coleccion.contiene(newElemento_vend))
                {
                    Console.WriteLine("\nEl elemento leido esta en la coleccion");
                }
                else
                {
                    Console.WriteLine("\nEl elemento leido no se encuentra en la coleccion");
                }
                break;

            default:
                break;
            }
        }
示例#25
0
 public void agregarHijo(IColeccionable coleccionable)
 {
     coleccionCompuesta.Add(coleccionable);
 }