예제 #1
0
        private static void GenerarReporte(string reporte)
        {
            var Engine  = new EscuelaEngine();
            var dicttmp = Engine.GetDiccionarioObjetos();

            var Reporteador = new Reporteador(dicttmp);


            switch (reporte)
            {
            case "1":
                Console.WriteLine("Inicializando Reporte Evaluaciones..");
                Reporteador.GetListaEvaluaciones();
                Console.WriteLine("Terminado Reporte Evaluaciones.");
                break;

            case "2":
                Console.WriteLine("Inicializando Reporte Asignaturas..");
                Reporteador.GetListaAsignaturas();
                Console.WriteLine("Terminado Reporte Asignaturas.");
                break;

            case "3":
                Console.WriteLine("Inicializando Reporte Evaluaciones por asignatura..");
                Reporteador.GetEvalXAsig();
                Console.WriteLine("Terminado Reporte Evaluaciones por asignatura.");
                break;

            case "4":
                Console.WriteLine("Inicializando Reporte Promedio de alumnos por asignatura..");
                Reporteador.GetPromeAlumnPorAsignatura();
                Console.WriteLine("Terminado Reporte Promedio de alumnos por asignatura.");
                break;

            default:
                Console.WriteLine("No se ha seleccionado una opcion valida para algún Reporte");
                break;
            }
        }
예제 #2
0
        //private static Cursos cursotemp;

        static void Main(string[] args)
        {
            AppDomain.CurrentDomain.ProcessExit += AccionDelEvento;
            AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(2000, 1000, 1);

            var engine = new EscuelaEngine();

            engine.Inicializar();

            Printer.WriteTitle("BIENVENIDOS A LA ESCUELA");
            //Printer.Beep(10000, cantidad:10);
            //imprimirCursosEscuela(engine.Escuela);

            var reporteador          = new Reporteador(engine.GetDiccionarioObjetos());
            var evalList             = reporteador.GetListaEvaluaciones();
            var listaAsig            = reporteador.GetListaAsignaturas();
            var listaEvalXAsignatura = reporteador.GetDicEvaluacionesXAsig();
            var listaProemdioXAsig   = reporteador.GetPromeAlumPorAsignatura();
            var mejorPromedio        = reporteador.GetMejoresPromedioXAsig("Matematicas", 10);

            Printer.WriteTitle("Captura de una Evaluacion por Consola");
            var    newEval = new Evaluaciones();
            string nombre, notaString;
            float  nota;

            WriteLine("Ingrese el nombre de la Evaluacion");
            Printer.PrecioneENTER();
            nombre = ReadLine();

            if (string.IsNullOrWhiteSpace(nombre))
            {
                Printer.WriteTitle("El valor del nombre no puede ser vacio");
                WriteLine("Saliendo del programa");
            }
            else
            {
                newEval.Nombre = nombre.ToLower();
                WriteLine("El nombre de la Evaluacion ha sido ingresado correctamente");
            }

            WriteLine("Ingrese la nota de la Evaluacion");
            Printer.PrecioneENTER();
            notaString = ReadLine();

            if (string.IsNullOrWhiteSpace(notaString))
            {
                Printer.WriteTitle("El valor de la nota no puede ser vacio");
                WriteLine("Saliendo del programa");
            }
            else
            {
                try
                {
                    newEval.Nota = float.Parse(notaString);

                    if (newEval.Nota < 0 || newEval.Nota > 5)
                    {
                        throw new ArgumentOutOfRangeException("La nota debe estar entre 0 y 5");
                    }
                    WriteLine("La nota de la Evaluacion ha sido ingresado correctamente");
                }
                catch (ArgumentOutOfRangeException arge)
                {
                    Printer.WriteTitle(arge.Message);
                    WriteLine("Saliendo del programa");
                }
                catch (System.Exception)
                {
                    Printer.WriteTitle("El valor de la nota no parece es un numero valido");
                    WriteLine("Saliendo del programa");
                }
                finally
                {
                    Printer.WriteTitle("FINALLY");
                    Printer.Beep(2500, 500, 3);
                }
            }



            /* foreach (var item in listaProemdioXAsig)
             * {
             *  foreach (var alum in item.Value)
             *  {
             *      var tmp = alum as Alumnos;
             *
             *  }
             * } */
            /* var dictmp = engine.GetDiccionarioObjetos();
             *
             * engine.ImprimirDiccionario(dictmp,true); */

            /* Printer.WriteTitle("Diccionario");
             * var dic = new Dictionary<String, String>();
             * dic["luna"] = "cuerpo celeste que gira alrededor de la tierra";
             * WriteLine(dic["luna"]);
             * /* dic.Add("luna", "Protagonista de soy Luna");
             * WriteLine("luna"); */


            //var obj = new ObjetoEscuelaBase();

            /* Printer.DrawLine(20);
             * Printer.DrawLine(20);
             * Printer.DrawLine(20);
             * Printer.WriteTitle("Pruebas de Polimorfismo");
             * var alumnoTest = new Alumnos{Nombre = "Nahuel Schimpf"};
             * Printer.WriteTitle("Alumno");
             * WriteLine($"Alumno: {alumnoTest.Nombre}");
             * WriteLine($"Id: {alumnoTest.UniqueId}");
             * WriteLine($"Typo: {alumnoTest.GetType()}");
             *
             * ObjetoEscuelaBase ob = alumnoTest;
             * WriteLine("ObjetoEscuela");
             * WriteLine($"Nombre: {ob.Nombre}");
             * WriteLine($"Id: {ob.UniqueId}");
             * WriteLine($"Typo: {ob.GetType()}");
             *
             * var evaluacion = new Evaluaciones(){Nombre="Evaluacion de Matematicas",Nota=4.5f};
             * Printer.WriteTitle("Evaluacion");
             * WriteLine($"Evaluacion: {evaluacion.Nombre}");
             * WriteLine($"Id: {evaluacion.Nota}");
             * WriteLine($"Id: {evaluacion.UniqueId}");
             * WriteLine($"Typo: {evaluacion.GetType()}");
             *
             * //ob = evaluacion;
             * WriteLine("ObjetoEscuela");
             * WriteLine($"Nombre: {ob.Nombre}");
             * WriteLine($"Id: {ob.UniqueId}");
             * WriteLine($"Typo: {ob.GetType()}");
             *
             * if(ob is Alumnos)
             * {
             *  Alumnos alumnoRecuperado = (Alumnos)ob;
             * }
             *
             * Alumnos alumnoRecuperado2 = ob as Alumnos;*/

            /* var escuela = new Escuela("Platzi Academy", 2012,TiposEscuela.Primaria,
             *          ciudad: "Bogota", pais: "Colombia");
             *
             * // es una coleccion
             * var listaCursos = new List<Cursos>(){
             *              new Cursos(){Nombre = "101", Jornada = TipoJornada.Mañana},
             *              new Cursos(){Nombre = "201", Jornada = TipoJornada.Mañana},
             *              new Cursos(){Nombre = "301", Jornada = TipoJornada.Mañana}
             * };
             * escuela.Curso = listaCursos;
             * escuela.Curso.Add( new Cursos{Nombre = "102", Jornada = TipoJornada.Tarde});
             * escuela.Curso.Add(new Cursos { Nombre = "202", Jornada = TipoJornada.Tarde});
             *
             * // otra coleccion
             * var otraColeccion = new List<Cursos>(){
             *                  new Cursos(){Nombre = "401", Jornada = TipoJornada.Mañana},
             *                  new Cursos(){Nombre = "501", Jornada = TipoJornada.Mañana},
             *                  new Cursos(){Nombre = "501", Jornada = TipoJornada.Tarde}
             * };
             *
             * //cursotemp = new Cursos{Nombre = "101-Vacacional", Jornada = TipoJornada.Noche};
             * escuela.Curso.AddRange(otraColeccion);
             * //escuela.Curso.Add(cursotemp); */


            /* imprimirCursosEscuela(escuela);
             * //WriteLine("Curso hash" + cursotemp.GetHashCode());
             * //escuela.Curso.Remove(cursotemp);
             *
             * // una manera de buscar el indice y borrarlo
             * //Predicate<Cursos> miAlgoritmo = Predicado;
             * //escuela.Curso.RemoveAll(Predicado);
             *
             * // otra manera
             * escuela.Curso.RemoveAll(delegate (Cursos cur)
             *                      {
             *                          return cur.Nombre == "301";
             *                      });
             *
             * // otra manera mas reducida, llamada expresion lambda
             * escuela.Curso.RemoveAll((cur)=> cur.Nombre == "501" && cur.Jornada == TipoJornada.Mañana); */

            // array

            /* escuela.Curso = new Cursos[]{
             *              new Cursos(){Nombre = "101"},
             *              new Cursos(){Nombre = "201"},
             *              new Cursos(){Nombre = "301"}
             * }; */


            // otra manera de asignacion

            /* escuela.Pais = "Colombia";
            *  escuela.Ciudad = "Bogota"; */

            // una forma de declarar el arreglo

            /* var arregloCursos = new Cursos[]{
             *      new Cursos()
             *          {
             *              Nombre = "101"
             *
             *          },
             *      new Cursos()
             *          {
             *              Nombre = "201"
             *
             *          },
             *      new Cursos()
             *          {
             *              Nombre = "301"
             *
             *          }
             * }; */

            // otra forma

            /* Cursos[] arregloCursos = {
             *      new Cursos(){Nombre = "101"},
             *      new Cursos(){Nombre = "201"},
             *      new Cursos(){Nombre = "301"}
             * }; */

            /* Console.WriteLine(escuela);
             * System.Console.WriteLine("While ===================");
             * imprimirArregloWhile(arregloCursos);
             * System.Console.WriteLine("Do While ===================");
             * imprimirArregloDoWhile(arregloCursos);
             * System.Console.WriteLine("For ===================");
             * imprimirArregloFor(arregloCursos);
             * System.Console.WriteLine("ForEach ===================");
             * imprimirArregloForEach(arregloCursos); */
        }