static void Main(string[] args) { EscuelaEngine engine = new EscuelaEngine(); engine.Init(); Printer.WriteTitle("BIENVENIDO"); //engine.ImprimirCursos(); //engine.ImprimirAlumnos(); //engine.ImprimirEvaluaciones(); //engine.Escuela.Limpiar(); //var lista = engine.GetEstructuratEscuelaList(); //var dictionary = engine.GetEscuelaDictionary(); //engine.ImprimirDiccionario(dictionary); Reporteador reporte = new Reporteador(engine.GetEscuelaDictionary()); reporte.GetListAsignaturas(); var evaluaciones = reporte.GetListEvaluaciones(); Console.ReadKey(); }
static void Main(string[] args) { //AppDomain.CurrentDomain.ProcessExit += método que se va a ejecutar var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA"); //Printer.Beep(10000, cantidad: 10); ImpimirCursosEscuela(engine.Escuela); // Si no se quieren pasar todos los parámetros de salida se puede crear una variable dummy para que se validen var listaObjetos = engine.GetObjetosEscuela(out int conteoEvaluaciones, out int conteoCursos, out int conteoAsignaturas, out int conteoAlumnos); var dicc = engine.GetDiccionarioObjetos(); engine.ImprimirDiccionario(dicc, true); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); var listAsig = reporteador.GetListaAsignaturas(); var listEvalxAsig = reporteador.GetDicEvaluacionAsignatura(); #region Comentado para estudio Linq // engine.Escuela.LimpiarLugar(); // var ListaILugar = from obj in listaObjetos // where obj is ILugar // select (ILugar) obj; #endregion }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += (o, s) => WriteLine("salio"); var engine = new EscuelaEngine(); engine.Inicializar(); Printer.DibujarTitulo("Bienvenidos a la escuela"); Printer.ImprimirInformacionEscuela(engine.escuela); // var alumnoTest = new Alumno {Nombre="Claire UnderWood"}; // ObjetoEscuelaBase ob = alumnoTest; // var evaluacion = new Evaluacion{Nombre="Evaluacion de mat", Nota=8}; // WriteLine(evaluacion.UniqueId); // ob = evaluacion; // var listaObjetos = engine.GetObjetoEscuelas( // traeEvaluaciones:false, traeAlumnos: true, traeAsignaturas:false); // /* var listaIlugar = from obj in listaObjetos // where obj is Alumno // select (Alumno) obj; */ // engine.escuela.LimpiarLugar(); Printer.DibujarTitulo("Diccionario"); var dic = engine.GetDiccionarioObjetos(); //Printer.ImprimirDiccionario(dic,true, false,false); var reporteador = new Reporteador(dic); var evallist = reporteador.GetListaEvaluaciones(); var listaasignaturas = reporteador.GetListaAsignaturas(); var listaEvalxAsig = reporteador.GetListaEvaluacionesporAsignatura(); var listaCalificaciones = reporteador.GetPromedioAlumnosporAsignatura(); int n = 3; var topPromedios = reporteador.GetTopNporMateria(n); }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; //anadimos al stack de eventos "ProcessExit" la funcion "AccionDelEvento", osea que los eventos son delegados //AppDomain.CurrentDomain.ProcessExit += (s,e) => Printer.Beep(2000,1000,1); //tambien se pueden anadir con expresiones lambda //AppDomain.CurrentDomain.ProcessExit -= AccionDelEvento; //esto quita del stack de eventos "ProcessExit", entonces cuando termine el programa, el stack solo tendra 1 evento a ejecutar var engine = new EscuelaEngine(); engine.Inicilizar(); Printer.WriteTitle("Bienvenidos a la Escuela"); var reporteador = new Reporteador(engine.getDiccionarioDeObjetos()); var eval = reporteador.GetListaEvaluaciones(); var asig = reporteador.GetListaAsignaturas(); var listaPromXAsig = reporteador.GetPromedioAlumnoPorAsignatura(); string nombre, notastring; float nota; var newEval = new Evaluacion(); WriteLine("Ingrese el nombre de la evaluacion"); Printer.PresioneEnter(); nombre = ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { throw new ArgumentException("El valor del nombre no puede estar vacio"); } else { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre de la evalucaion ha sido ingresado correctamente"); } WriteLine("Ingrese la nota de la evaluacion"); Printer.PresioneEnter(); notastring = ReadLine(); try { nota = float.Parse(notastring); if (nota < 0 || nota > 5) { throw new ArgumentOutOfRangeException("La nota debe ser entre 0.0 y 5.0"); } } catch (ArgumentOutOfRangeException aore) { System.Console.WriteLine(aore.Message); } catch (Exception) { Printer.WriteTitle("El valor de la nota no es un valor valido"); } finally{ System.Console.WriteLine("Modulo Finally"); } }
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 /:p/"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); var listaAsg = reporteador.GetListaAsignaturas(); var listaProm = reporteador.GetPromedioAlumnoxAsignatura(); var mejoresAlumnosxAsig = reporteador.GetMejoresAlumnos(8); }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += AcciondelEvento; AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(100, 100, 1); var engine = new EscuelaEngine(); engine.Inicializar(); Printer.EscribirTitulo("Bienvenidos a la escuela"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evList = reporteador.GetListaEvaluaciones(); var asigList = reporteador.GetListaAsignatura(); var listaEvXAsig = reporteador.GetListaEvPorAsignatura(); var listaPromXAsig = reporteador.GetPromedioPorAsignatura(); }
static void Main(string[] args) { var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); IEnumerable <string> lasAsignaturas = reporteador.GetListaAsignaturas(); Printer.WriteTitle("Prueba método GetListEvalXAsig"); Dictionary <string, IEnumerable <Evaluación> > diccEvXAsig = reporteador.GetListaEvXAsig(); var PromedioAlumnos = reporteador.ExtraerPromedioPorNotaAlumno(); var Mejores3Promedios = reporteador.MejoresXPromediosDeXAsignatura(3); }
static void Main(string[] args) { // AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; // AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(1000, 1000, 1); // AppDomain.CurrentDomain.ProcessExit -= AccionDelEvento; var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("Bienvenidos a la Escuela"); var reporteador = new Reporteador(engine.GetDictionarioObjetos()); reporteador.GetListaEvaluaciones(); var lisAsign = reporteador.GetListaAsignaturas(); var lisEvalAsign = reporteador.GetDiccionarioEvaluacionesAsignatura(); var lisPromedioAsign = reporteador.GetPromedioAlumAsignatura(); }
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"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); var listaAsg = reporteador.GetListaAsignaturas(); var listaEvalXAsig = reporteador.GetDicEvaluaXAsig(); var listaPromXAsig = reporteador.GetPromeAlumnPorAsignatura(); var topPromedio = reporteador.GetTopAlumnosPorAsignatura(5); }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA"); var reporteador = new Reporteador(engine.getDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); var listaAsg = reporteador.GetListaAsignaturas(); var listaEvalXasig = reporteador.getDicEvaluaXAsig(); var listaPromedioXAsig = reporteador.GetPromediosPorAsignatura(); Printer.WriteTitle("Captura de una evaluacion por consola"); var newEval = new Evaluación(); string nombre; float nota; WriteLine("Ingrese el nombre de la evaluacion"); Printer.presioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { throw new ArgumentException("El valor del nombre no puede ser vacio"); } else { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre de la evaluacion ha sido ingresado correctamente"); } WriteLine("Ingrese la nota de la evaluacion"); Printer.presioneEnter(); var notaString = Console.ReadLine(); if (string.IsNullOrWhiteSpace(notaString)) { throw new ArgumentException("El valor de la nota no puede ser vacio"); } else { newEval.Nota = float.Parse(notaString); WriteLine("La nota de la evaluacion ha sido ingresado correctamente"); } }
static void Main(string[] args) { // AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA"); var reporteador = new Reporteador(engine.GetDiccionarioObjeto()); reporteador.GetListaEvaluaciones(); var listaPromedioXAsig = reporteador.GetPromAlumnoPorAsignatura(); // //Printer.Beep(10000, cantidad: 10); // ImpimirCursosEscuela(engine.Escuela); // // int conteoEvaluaciones, conteoAlumnos, conteoAsignaturas, conteoCursos; // var dictmp = engine.GetDiccionarioObjeto(); // engine.ImprimirDiccionario(dictmp, true); }
static void Main(string[] args) { //El evento se va a ejecutar siempre que termine la aplicación, no importa cómo termine AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; //AccionDelEvento es un apuntador a una función AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(2000, 1000, 1); AppDomain.CurrentDomain.ProcessExit -= AccionDelEvento; var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); var listaAsg = reporteador.GetListaAsignaturas(); var listaEvalXAsig = reporteador.GetDicEvaluaXAsig(); var listaPromXAsig = reporteador.GetPromeAlumnPorAsignatura(); }
static void Main(string[] args) { // AppDomain.CurrentDomain.ProcessExit += AccionEvento; // instanciar escuela var engine = new EscuelaEngine(); engine.Inicializar(); // ejecucion Printer.WriteTitle("Cursos de la Escuela"); var diccionarioObjs = engine.GetDiccionarioObjetos(); engine.ImprimirDiccionario(diccionarioObjs, true); var reporteador = new Reporteador(diccionarioObjs); var evalList = reporteador.GetListaDeEvaluaciones(); var asignaturaList = reporteador.GetListaAsignaturas(); var listaEvalAsig = reporteador.GetDicEvaluacionesXAsig(); var listPromXAsig = reporteador.getPromedioAlumnoXAsinatura(); Console.WriteLine(fibonacci(19)); }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += AccionEvento; var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA."); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evaluaciones = reporteador.GetListaEvaluaciones(); var asignaturas = reporteador.GetListaAsignaturas(); var evaluacionesAsignatura = reporteador.GetListaEvaluacionesAsignatura(); var promedios = reporteador.GetPromedioAlumnoAsignatura(); foreach (var promedio in promedios) { foreach (var alumno in promedio.Value) { var alumnoPromedio = alumno as AlumnoPromedio; } } Printer.WriteTitle("Captura de una Evaluacion por consola"); var evaluacion = new Evaluación(); string nombre, notaString; float nota; WriteLine("Ingrese el nombre de la evaluacion."); Printer.PresioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { Printer.WriteTitle("El valor del nombre no puede ser vacio"); } else { evaluacion.Nombre = nombre.ToLower(); } WriteLine("El nombre de la evaluacion se ha ingresado correctamente."); WriteLine("Ingrese la nota de la evaluacion."); Printer.PresioneEnter(); notaString = Console.ReadLine(); if (string.IsNullOrWhiteSpace(notaString)) { Printer.WriteTitle("El valor de la nota no puede ser vacio"); } else { try { evaluacion.Nota = float.Parse(notaString); WriteLine("La nota de la evaluacion se ha ingresado correctamente."); if (evaluacion.Nota < 0 || evaluacion.Nota > 5) { throw new ArgumentOutOfRangeException("La nota debe de estar entre 0 y 5."); } } catch (ArgumentOutOfRangeException excepcion) { WriteLine(excepcion.Message); } catch (System.Exception) { Printer.WriteTitle("El valor de la nota no es un numero valido"); } finally { Printer.WriteTitle("FINALY"); } } }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; var engine = new EscuelaEngine(); engine.Inicializar(); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); Printer.WriteTitle("BIENVENIDO A LA ESCUELA"); Printer.WriteTitle("Reportes:"); WriteLine("1. Lista de Evaluaciones."); WriteLine("2. Lista de Asignaturas."); WriteLine("3. Lista de Evaluaciones por Asignatura."); WriteLine("4. Lista de Promedios de Alumnos por Asignatura."); WriteLine("5. Lista de Mejores Promedios por Asignatura."); WriteLine("Ingrese la opción correspondiente al reporte que desea ver:"); Printer.PresioneENTER(); string opcion = Console.ReadLine(); try { if (string.IsNullOrWhiteSpace(opcion)) { Printer.WriteTitle("El valor de la opción no puede ser vacío"); } else { if (int.Parse(opcion) < 1 || int.Parse(opcion) > 5) { throw new ArgumentOutOfRangeException("El valor de la opción debe estar entre 1 y 5"); } else { switch (int.Parse(opcion)) { case 1: var evalList = reporteador.GetListaEvaluaciones(); Printer.WriteTitle("LISTA DE EVALUACIONES"); reporteador.ImprimirEnumerable(evalList); break; case 2: var listaAsig = reporteador.GetListaAsignaturas(); Printer.WriteTitle("LISTA DE ASIGNATURAS"); reporteador.ImprimirEnumerable(listaAsig); break; case 3: var listaEvalxAsig = reporteador.GetDicEvaluaxAsig(); Printer.WriteTitle("LISTA DE EVALUACIONES POR ASIGNATURA"); reporteador.ImprimirDiccionario(listaEvalxAsig); break; case 4: var listaPromxAlum = reporteador.GetPromAlumxAsig(); Printer.WriteTitle("LISTA DE PROMEDIOS DE ALUMNOS POR ASIGNATURA"); reporteador.ImprimirDiccionario(listaPromxAlum); break; case 5: WriteLine("Ingrese la asignatura para el reporte:"); Printer.PresioneENTER(); string asignatura = Console.ReadLine(); WriteLine("Ingrese la cantidad de promedios para el reporte:"); Printer.PresioneENTER(); string cantidad = Console.ReadLine(); var listaMejoresPromxAlum = reporteador.GetMejoresPromxAsig(asignatura, int.Parse(cantidad)); Printer.WriteTitle($"LISTA DE LOS MEJORES {cantidad} PROMEDIOS PARA LA ASIGNATURA {asignatura.ToUpper()}"); reporteador.ImprimirEnumerable(listaMejoresPromxAlum); break; } return; } } } catch (ArgumentOutOfRangeException arg) { Printer.WriteTitle(arg.Message); } catch (Exception) { Printer.WriteTitle("El valor de la opción no es válido"); } finally { Printer.WriteTitle("FINALIZANDO"); } }
static void Main(string[] args) { //Event = dispara las acciones AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(2000, 1000, 1); //AppDomain.CurrentDomain.ProcessExit -= AccionDelEvento; 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 reporteador = new Reporteador(null); var evalList = reporteador.GetListaEvaluaciones(); var asgList = reporteador.GetListaAsignaturas(); var listaEvalXAsig = reporteador.GetDiccionarioEvalXAsig(); var listaPromeXAsig = reporteador.GetPromedioAlumnoPorAsignatura(); Printer.WriteTitle("Captura de una Evaluacion por Consola"); var newEval = new Evaluacion(); string nombre, notaString; float nota; WriteLine("Ingrese el nombre de la evaluación"); Printer.PresioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { //throw new ArgumentException("El valor del nombre no puede ser vacio"); Printer.WriteTitle("El valor del nombre no puede ser vacio"); WriteLine("SALIENDO DEL PROGRAMA"); } else { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre de la evaluación ha sido ingresado correctamente"); } WriteLine("Ingrese la nota de l aevaluación"); Printer.PresioneEnter(); notaString = Console.ReadLine(); if (string.IsNullOrWhiteSpace(notaString)) { //throw new ArgumentException("El valor de la nota no puede ser vacio"); 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 evaluación ha sido ingresado correctamente"); } catch (ArgumentOutOfRangeException arge) { WriteLine(arge.Message); WriteLine("SALIENDO DEL PROGRAMA"); } catch (Exception) { Printer.WriteTitle("El valor de la nota no es un número válido"); WriteLine("SALIENDO DEL PROGRAMA"); } finally { Printer.WriteTitle("FINALLY"); Printer.Beep(2500, 500, 3); } } /* * //Obtener los objetos mediante una lista * var listaObjetos = engine.GetObjetosEscuela(); */ /* * //Obtener los objetos mediante un diccionario * var dictmp = engine.GetDiccionarioObjetos(); * engine.ImprimirDiccionario(dictmp, true); */ /* * //Implementacion de diccionarios * Dictionary<int, string> diccionario = new Dictionary<int, string>(); * diccionario.Add(10, "Pepito"); * diccionario.Add(20, "Loren"); * foreach (var keyValPair in diccionario) * { * WriteLine($"Key: {keyValPair.Key} Valor: {keyValPair.Value}"); * } * Printer.WriteTitle("Acceso a Diccionario"); * diccionario[0] = "Juanito"; * WriteLine(diccionario[0]); * Printer.WriteTitle("Otro Diccionario"); * var dic = new Dictionary<string, string>(); * dic["Luna"] = "Cuerpo celeste que gira alrededor de la tierra"; * WriteLine(dic["Luna"]); * dic["Luna"] = "Protagonista de Soy Luna"; * WriteLine(dic["Luna"]); */ /* * //Interfaces * var ListaILugar = from obj in listaObjetos * where obj is ILugar * select (ILugar)obj; */ /* * //is para preguntar si un objeto es de un tipo determinado * if (ob is Alumno) * { * Alumno alumnoRecuperado = (Alumno)ob; * } * //as tomar el objeto de cual estamos refiriendonos * Alumno alumnoRecuperado2 = ob as Alumno; */ }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; var engine = new EscuelaEngine(); engine.Inicializar(); var diccionarioObj = engine.ObtenerDiccionarioObjetos(); var reporteador = new Reporteador(diccionarioObj); while (true) { Clear(); Printer.DibujarMenuPrincipal(engine.Escuela.Nombre); var opcion = ReadKey(); try { switch (opcion.Key) { case ConsoleKey.D0: case ConsoleKey.NumPad0: Clear(); WriteLine("Terminando el programa..."); return; case ConsoleKey.D1: case ConsoleKey.NumPad1: var lsEvaluaciones = reporteador.ObtenerEvaluaciones(); if (lsEvaluaciones.Count() == 0) { WriteLine("No se encontraron registros"); } else { ReportePaginado(lsEvaluaciones, "Reporte de Evaluaciones"); } break; case ConsoleKey.D2: case ConsoleKey.NumPad2: var lsEvalAsig = reporteador.ObtenerEvaluacionesPorAsignatura(); if (lsEvalAsig.Count() == 0) { WriteLine("No se encontraron registros"); } else { SubMenu(lsEvalAsig, "Reporte de Evaluaciones por Asignatura"); } break; case ConsoleKey.D3: case ConsoleKey.NumPad3: var lsPromedio = reporteador.ObtenerPromedioAlumnoPorAsignatura(); if (lsPromedio.Count() == 0) { WriteLine("No se encontraron registros"); } else { SubMenu(lsPromedio, "Reporte de Promedio Alumno por Asignatura"); } break; case ConsoleKey.D4: case ConsoleKey.NumPad4: Clear(); WriteLine("Ingrese la cantidad Top"); var cantidadStr = ReadLine(); if (int.TryParse(cantidadStr, out int cantidad)) { var lsTopPromedio = reporteador.ObtenerPromedioAlumnoPorAsignatura(cantidad); if (lsTopPromedio.Count() == 0) { WriteLine("No se encontraron registros"); } else { SubMenu(lsTopPromedio, $"Reporte de Top {cantidad} Promedio Alumno por Asignatura"); } } break; } } catch (Exception) { WriteLine("Ocurrió un error inesperado"); WriteLine("Volviendo al menú"); } finally { } } }
static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += ActionDelEvento; AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(2000, 1000, 1); AppDomain.CurrentDomain.ProcessExit -= ActionDelEvento; 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 listAsg = reporteador.GetListaAsignaturas(); var listaEvalXAsig = reporteador.GetDicEvaluacionesXAsig(); var listaPromXAsig = reporteador.GetPromeAlumnPorAsignatura(); Printer.WriteTitle("Captura de una Evaluación por Consola"); var newEval = new Evaluación(); string nombre, notaString; float nota; WriteLine("Ingrese el nombre de la Evaluación"); Printer.PresioneEnter(); nombre = Console.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 Evaluación ha sido ingresado correctamente"); } WriteLine("Ingrese la nota de la Evaluación"); Printer.PresioneEnter(); notaString = Console.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 Evaluación ha sido ingresada correctamente"); return; } catch (ArgumentOutOfRangeException arge) { Printer.WriteTitle(arge.Message); WriteLine("Saliendo del programa"); } catch (Exception) { Printer.WriteTitle("El valor de la nota no es número válido"); WriteLine("Saliendo del programa"); } finally { Printer.WriteTitle("FINALLY"); Printer.Beep(2500, 500, 3); } } // Dictionary<int, string> diccionario = new Dictionary<int, string>(); // diccionario.Add(10, "Duvan"); // diccionario.Add(23, "Lorem Ipsum"); // foreach (var keyValPair in diccionario) // { // WriteLine($"key: {keyValPair.Key} Valor: {keyValPair.Value}"); // } // var dictmp = engine.GetDiccionarioObjetos(); // engine.ImprimirDiccionario(dictmp, true); //////////////////EJECICIOS DICCIONARIO////////////////// // Printer.WriteTitle("Acceso a Diccionario"); // //WriteLine(diccionario[23]); // diccionario[0] = "Pekerman"; // WriteLine(diccionario[0]); // Printer.WriteTitle("Otro diccionario"); // var dic = new Dictionary<string, string>(); // dic["Luna"] = "Cuerpo celeste que gira alrededor de la tierra"; // WriteLine(dic["Luna"]); // dic["Luna"] = "Protagonista de soy Luna"; // dic.Add("Luna", "Protagonista de Soy Luna");//Saca error // WriteLine(dic["Luna"]); /////////////////////////////////////////////////////////// //////////////PRUEBAS DE POLIMORFISMO///////////////// //var obj = new ObjetoEscuelaBase(); // Printer.DrawLine(20); // Printer.DrawLine(20); // Printer.DrawLine(20); // Printer.WriteTitle("Pruebas de Polimorfismo"); // var alumnoTest = new Alumno { Nombre = "Claire UnderWood" }; // Printer.WriteTitle("Alumno"); // WriteLine($"Alumno: {alumnoTest.Nombre}"); // WriteLine($"Alumno: {alumnoTest.UniqueId}"); // WriteLine($"Alumno: {alumnoTest.GetType()}"); // ObjetoEscuelaBase ob = alumnoTest; // Printer.WriteTitle("ObjetoEscuela"); // WriteLine($"Alumno: {ob.Nombre}"); // WriteLine($"Alumno: {ob.UniqueId}"); // WriteLine($"Alumno: {ob.GetType()}"); // var objDummy = new ObjetoEscuelaBase() { Nombre = "Frank Underwood" }; // Printer.WriteTitle("ObjetoEscuelaBase"); // WriteLine($"Alumno: {objDummy.Nombre}"); // WriteLine($"Alumno: {objDummy.UniqueId}"); // WriteLine($"Alumno: {objDummy.GetType()}"); // var evaluación = new Evaluación() { Nombre = "Evaluación de math", Nota = 4.5f }; // Printer.WriteTitle("Evaluación"); // WriteLine($"Evaluación: {evaluación.Nombre}"); // WriteLine($"Evaluación: {evaluación.UniqueId}"); // WriteLine($"Evaluación: {evaluación.Nota}"); // WriteLine($"Evaluación: {evaluación.GetType()}"); // ob = evaluación; // Printer.WriteTitle("ObjetoEscuela"); // WriteLine($"Alumno: {ob.Nombre}"); // WriteLine($"Alumno: {ob.UniqueId}"); // WriteLine($"Alumno: {ob.GetType()}"); // alumnoTest = (Alumno)evaluación; // if (ob is Alumno) // { // Alumno alumnoRecuperado = (Alumno)ob; // } // Alumno alumnoRecuperado2 = ob as Alumno; // if (alumnoRecuperado2 != null) // { // } ///////////////////////////////////////////////////// //engine.Escuela.LimpiarLugar(); //////Obtener objetos a través de linq////////////// // var listaILugar = from obj in listaObjetos // where obj is ILugar // select (ILugar) obj; // var listaILugar = from obj in listaObjetos // where obj is Alumno // select (Alumno) obj; /////////////////////////////////////////////////// ////////////////PARAMETROS DE SALIDAD///////////// ///Forma 1 // int dummy = 0; // var listaObjetos = engine.GetObjetoEscuelas( // out int conteoEvaluaciones, // out dummy, // out dummy, // out dummy); //Forma 2 *Utilizar variable dummy // int dummy = 0; // var listaObjetos = engine.GetObjetoEscuelas( // out int conteoEvaluaciones, // out int conteoCursos, // out int conteoAsignaturas, // out int conteoAlumnos // ); //Forma 3 *Utilizando sobrecargas de metodos // int dummy = 0; // var listaObjetos = engine.GetObjetoEscuelas(); // listaObjetos.Add(new Evaluación { Nombre = "Curso Loco" }); ///////////////////////////////////////////////////////////////////// }
static void Main(string[] args) { //Se ejecutan en orden cuando el proceso termina AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(2000, 1000, 1); AppDomain.CurrentDomain.ProcessExit -= AccionDelEvento; //Se elimina este var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("¡Bienvenido a la escuela!"); //var reporteador = new Reporteador(engine.getDiccionarioObjetos()); var reporteador = new Reporteador(null); var evalList = reporteador.GetListaEvaluaciones(); var listaAsig = reporteador.GetListaAsignaturas(); var listaEvalXAsig = reporteador.GetDicEvaluaXAsig(); var listaPromXAsig = reporteador.GetPromAlumPorAsignatura(); Printer.WriteTitle("Captura de una evaluación por consola"); WriteLine("Ingrese el nombre de la evaluación"); Printer.PressEnter(); string nombre = Console.ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { Printer.WriteTitle("El valor del nombre no puede ser vacio"); WriteLine("Saliendo del programa"); } else { nombre = nombre.ToLower(); WriteLine("Nombre ingresado correctamente"); } WriteLine("Ingrese la nota de la evaluación"); Printer.PressEnter(); string notaStr = Console.ReadLine(); float nota; try { nota = float.Parse(notaStr); if (nota < 0 || nota > 5) { throw new ArgumentOutOfRangeException("La nota debe estar entre 0 y 5"); } WriteLine("La nota de la evaluacion ha sido ingresada correctamente"); return; } catch (ArgumentOutOfRangeException argE) { Printer.WriteTitle(argE.Message); WriteLine("Saliendo del programa"); } finally { Printer.WriteTitle("FINALLY"); Printer.Beep(2500, 500, 3); } }
static void Main(string[] args) { var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); var listaAsg = reporteador.GetListaAsignaturas(); var listaEvalXAsig = reporteador.GetDicEvaluaXAsig(); var listaPromXAsig = reporteador.GetPromedioPorAsignatura(); Printer.WriteTitle("Captura de una Evaluación por Consola"); var newEval = new Evaluación(); string nombre, notastring; //float nota; WriteLine("Ingrese el nombre de la evaluación"); Printer.PreioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { Printer.WriteTitle("El valor del nombre no puede estar vacio"); WriteLine("Saliendo del programa"); } else { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre ha sido capturado correctamente"); } WriteLine("Ingrese la nota de la evaluación"); Printer.PreioneEnter(); notastring = Console.ReadLine(); if (string.IsNullOrWhiteSpace(notastring)) { Printer.WriteTitle("El valor de la nota no puede estar 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 1 y 5"); } WriteLine("La nota ha sido capturado correctamente"); } catch (ArgumentOutOfRangeException arge) { Printer.WriteTitle(arge.Message); WriteLine("Saliendo del programa"); } catch (Exception) { Printer.WriteTitle("El valor de la nota no es un número valido"); WriteLine("Saliendo del programa"); } finally { //El finally dentro de las excepciones es ese fragmento de codigo que siempre se va a jecutar antes de terminar la apliación o proceso de la excepcion. Console.WriteLine("FINAllY"); } } Console.ReadLine(); }
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"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); //reporteador.GetListaEscuela(); /* var evalList = reporteador.GetListaEvaluaciones(); * var listaAsig = reporteador.GetListaAsignaturas(); * var listaEvalAsig = reporteador.GetDiccionarioEvaluacionesXAsignatura(); * var listaPromXAsig = reporteador.GetPromeAlumnPorAsignatura(); * var topListaPromXAsig = reporteador.GetTopPromeAlumnPorAsignatura(5); */ Printer.WriteTitle("Captura de una Evaluación por Consola"); var newEval = new Evaluación(); string nombre, notaString; float nota; WriteLine("Ingrese el nombre de la Evaluación:"); Printer.PresioneEnter(); nombre = Console.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 evaluación ha sido ingresado correctamente"); } WriteLine("Ingrese la nota de la Evaluación:"); Printer.PresioneEnter(); notaString = Console.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 evaluación ha sido ingresado correctamente"); return; } catch (ArgumentOutOfRangeException e) { WriteLine(e.Message); WriteLine("Saliendo del programa"); } catch (Exception) { WriteLine("El valor de la nota no es valida"); } finally { Printer.WriteTitle("FINALLY"); Printer.Beep(2500, 500, 3); } } }
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"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); //new Reporteador(null); var evaluaciones = reporteador.GetListaEvaluaciones(); var asignaturas = reporteador.GetListaAsignaturas(); var dicEvalXAsig = reporteador.GetDicEvaluaXAsig(); var listaPromXAsig = reporteador.GetPromedioAlumnosPorAsignaturas(); var mejoresPromedios = reporteador.GetMejoresPromediosPorAsignaturas(10); Printer.WriteTitle("Captura de una evaluación por consola."); var eval = new Evaluación(); string nombre; WriteLine("Ingrese el nombre de la evaluación"); Printer.PresioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { throw new ArgumentException("El valor del nombre no puede ser vacio."); } else { eval.Nombre = nombre.ToLower(); System.Console.WriteLine("El nombre de la evaluación ha sido ingresado correctamente."); } WriteLine("Ingrese el valor de la nota"); Printer.PresioneEnter(); var notastring = Console.ReadLine(); if (string.IsNullOrWhiteSpace(notastring)) { throw new ArgumentException("El valor de la nota no puede ser vacio."); } else { try{ eval.Nota = double.Parse(notastring); if (eval.Nota < 0 || eval.Nota > 5) { throw new ArgumentOutOfRangeException("La nota debe estar entre 0 y 5."); } System.Console.WriteLine("El valor de la nota ha sido ingresado correctamente."); } catch (ArgumentOutOfRangeException arge) { Printer.WriteTitle(arge.Message); WriteLine("Saliendo del programa."); } catch (Exception) { Printer.WriteTitle("El valor de la nota no es un número válido."); WriteLine("Saliendo del programa."); } } }
static void Main(string[] args) { // evento AppDomain.CurrentDomain.ProcessExit += AcciondelEvento; AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(100, 1000, 1); var engine = new EscuelaEngine(); engine.Inicializar(); Printer.Title("Bienvenidos"); var reporteador = new Reporteador(engine.GetDiccionarioOjetos()); var evalList = reporteador.GetListaEvaluaciones(); var asigList = reporteador.GetListaAsignaturas(); var listEvaluaCAsignat = reporteador.GetDicdeEvalxAsignatura(); var listPromedios = reporteador.GetpromedioAlumnosXAsignatura(); Printer.Title("Reportes: "); var newEval = new Evaluacion(); string nombre, notaString; Console.WriteLine("Escriba su nombre y "); Printer.PresioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrEmpty(nombre)) { Printer.Title("El Valor del nombre no puede ser vacio"); Console.WriteLine("Saliendo del programa"); } else { try { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre de la evaluacion ha sido ingresado!"); } catch { Printer.Title("El Valor del nombre no puede ser vacio"); Console.WriteLine("Saliendo del programa"); } } Console.WriteLine("Escriba la nota de la evaluacion "); Printer.PresioneEnter(); notaString = Console.ReadLine(); if (string.IsNullOrEmpty(notaString)) { Printer.Title("El Valor de la nota no puede ser vacio"); Console.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 ha sido ingresada!"); } catch (ArgumentOutOfRangeException arge) { Printer.Title(arge.Message); Console.WriteLine("Saliendo del programa"); } catch (Exception) { Printer.Title("El Valor de la nota no puede ser vacio"); Console.WriteLine("Saliendo del programa"); } finally { Printer.Title("Finalmente"); Printer.Beep(5000, 1000, 3); } } Dictionary <int, string> dicccionario = new Dictionary <int, string>(); dicccionario.Add(10, "Juan"); dicccionario.Add(11, "Yonathan"); foreach (var keyValPair in dicccionario) { WriteLine($"Key: {keyValPair.Key} Valor: {keyValPair.Value}"); } var dictmp = engine.GetDiccionarioOjetos(); engine.ImprimirDiccionario(dictmp, true); /* Printer.Title("Acceso al diccionario"); * dicccionario[0] = "Pekerman"; * WriteLine(dicccionario[0]); // accediendo al valor por medio de la llave dentro del diccionario * Printer.Title("Otro diccionario"); * * var dic = new Dictionary<string, string>(); * * dic["luna"] = "satelite de la tierra"; * WriteLine(dic["luna"]); */ // dic.Add("luna", "personaje de tv"); // WriteLine(dic["luna"]); // en este caso no sirve porque una cosa es remplazar el valor de la llave y otra adicionar una llave igual... }
static void Main(string[] args) { var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("Bienvenidos a la Escuela"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); Printer.WriteTitle("Captura de una Evaluación por Consola"); var nEval = new Evaluación(); string nombre, notaString; float nota; WriteLine("Ingrese el nombre de la evaluación"); Printer.PresioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrEmpty(nombre)) { throw new ArgumentException("El valor del nombre no puede ser vacio"); } else { nEval.Nombre = nombre.ToLower(); WriteLine("El nombre de la evaluación ha sido ingresado correctamente"); } WriteLine("Ingrese la nota de la evaluación"); Printer.PresioneEnter(); notaString = Console.ReadLine(); if (string.IsNullOrEmpty(nombre)) { throw new ArgumentException("El valor de la nota no puede ser vacio"); } else { try { nEval.Nota = float.Parse(notaString); if (nEval.Nota < 0 || nEval.Nota > 5) { throw new ArgumentOutOfRangeException("La nota debe ser entre 0 y 5"); } WriteLine("La nota de la evaluación ha sido ingresado correctamente"); } catch (ArgumentOutOfRangeException arge) { Printer.WriteTitle(arge.Message); } catch (Exception) { WriteLine("La nota de la evaluación no es un número válido"); } finally { //finally siempre se va a ejecutar Printer.WriteTitle("Se ejecuto el finally"); } } }
static void Main(string[] args) { var engine = new EscuelaEngine(); engine.Inicializador(); WriteLine("BIENVENIDOS A LA ESCUELA"); var reporteador = new Reporteador(engine.GetOjetosEscuelaDiccionario()); var evalList = reporteador.GetListaEvaluaciones(); var asigEavalList = reporteador.GetListaAsignaturasEvaluadas(); var evalPorAsignaturasLista = reporteador.GetDiccionarioEvaluacionesPorAsignatura(); var promedioPorAsignatura = reporteador.GetDiccionarioPromedioAlumnosPorAsignatura(); var TopPromedioAlumnosPorAsignatura = reporteador.GetTopPromedioAlumnosPorAsignatura(5); Printer.WriteTitle("Captura de una evaluación por consola"); var newEval = new Evaluacion(); string nombre, notaString; float nota; WriteLine("Ingrese el nombre de la evaluación"); Printer.PresioneENTER(); nombre = ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { Printer.WriteTitle("El valor del nombre es requerido"); WriteLine("Saliendo del programa"); } else { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre fue ingresado correctamente"); } WriteLine("Ingrese la nota de la evaluación"); Printer.PresioneENTER(); notaString = ReadLine(); /* if (string.IsNullOrWhiteSpace(notaString)) * { * Printer.WriteTitle("El valor de la nota es requerido"); * 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 fue ingresada correctamente"); } catch (System.ArgumentOutOfRangeException ex) { Printer.WriteTitle(ex.Message); WriteLine("Saliendo del programa"); } catch (System.Exception) { Printer.WriteTitle("El valor de la nota no es un número válido"); WriteLine("Saliendo del programa"); } finally { Printer.WriteTitle("Finally se ejecuta siempre"); } /* } */ /* WriteLine(engine.Escuela); * ImprimirCursosEscuela(engine.Escuela); * * var listaObjetos = engine.GetObjetosEscuelas( * out int conteoEvaluaciones, * out int conteoAlumnos, * out int conteoAsignaturas, * out int conteoCursos * ); * * /// Filtramos la lista de objetas que implementen la interfaz Ilugar. * var listaIlugar = from obj in listaObjetos * where obj is ILugar * select (ILugar)obj; * * var dictmp = engine.GetOjetosEscuelaDiccionario(); * engine.ImprimirDicionario(dictmp, imprAl:true, imprCur:true); */ }
static void Main(string[] args) { /// Evento delegado lanzado al terminar la ejecución del programa // Forma 1: //AppDomain.CurrentDomain.ProcessExit += AccionDelEvento(); // Forma 2: //.CurrentDomain.ProcessExit += (o,s)=> Imprimir.ImprimirBeepEnConsola(5000,1000); /// Remover un evento asignado //AppDomain.CurrentDomain.ProcessExit -= AccionDelEvento(); var coreEscuela = new EscuelaEngine(); coreEscuela.Inicializar(); ImprimirEscuelas(coreEscuela.Escuela); Imprimir.ImprimirLineaEnConsola(20); Imprimir.ImprimirTituloEnConsola("Pruebas Polimorfismo"); var alumnoTest = new Alumno() { Nombre = "Carlo Amaya" }; var objSistema = alumnoTest; Imprimir.ImprimirTituloEnConsola("Alumno"); Console.WriteLine($"Nombre Alumno: {alumnoTest.Nombre}"); Console.WriteLine($"Id Alumno: {alumnoTest.Id}"); Console.WriteLine($"Id objSistema: {alumnoTest.GetType()}"); Imprimir.ImprimirTituloEnConsola("objSistema"); Console.WriteLine($"Nombre objSistema: {objSistema.Nombre}"); Console.WriteLine($"Id objSistema: {objSistema.Id}"); Console.WriteLine($"Id objSistema: {objSistema.GetType()}"); var listEscuela = new List <Escuela>(); listEscuela.Add(coreEscuela.Escuela); /// obtener objetos que implementen una interfaz var objILugar = from obj in listEscuela where obj is ILugar select(ILugar) obj; /// Diccionarios Dictionary <int, string> diccionario = new Dictionary <int, string>(); diccionario.Add(10, "Juank"); diccionario.Add(12, "CarlosA"); diccionario.Add(14, "DianaO"); // Forma de recorrer un diccionario. foreach (var keyValuePair in diccionario) { Console.WriteLine($"Key:{keyValuePair.Key}; Valor: {keyValuePair.Value}"); } Dictionary <string, string> diccionario2 = new Dictionary <string, string>(); diccionario2["Luna"] = "Cuerpo celeste que gira alrrededor de la tierra"; Console.WriteLine(diccionario2["Luna"]); // Cast IEnumerable <SalaDistante> listaSalasDistantes = new List <SalaDistante>(); List <Sala> salas = new List <Sala>(); //salas = listaSalasDistantes.Cast<Sala>(); var sala1 = new Sala() { CostoFijo = 1534, Descripcion = "ejemplo 1", Id = 1, IndiceOcupacion = 1, MaximoOcupacion = 1, Nombre = "Sala 1", OcupacionActual = 1 }; var sala2 = new Sala() { CostoFijo = 1534, Descripcion = "ejemplo 2", Id = 1, IndiceOcupacion = 1, MaximoOcupacion = 1, Nombre = "Sala 2", OcupacionActual = 1 }; var sala3 = new Sala() { CostoFijo = 1534, Descripcion = "ejemplo 3", Id = 1, IndiceOcupacion = 1, MaximoOcupacion = 1, Nombre = "Sala 3", OcupacionActual = 1 }; var sala4 = new Sala() { CostoFijo = 1534, Descripcion = "ejemplo 4", Id = 1, IndiceOcupacion = 1, MaximoOcupacion = 1, Nombre = "Sala 4", OcupacionActual = 1 }; salas.Add(sala1); salas.Add(sala2); salas.Add(sala3); salas.Add(sala4); listaSalasDistantes = salas.Cast <SalaDistante>(); Reporteador repo = new Reporteador(null); }
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"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvalucion(); var asigList = reporteador.GetListaAsignaturas(); var listaEval = reporteador.GetDicEvaluacionAsign(); var ListaPromexAsig = reporteador.GetPromedioAlumnoAsig(); Printer.WriteTitle("Captura de una evaluacion por consola"); var newEval = new Evaluacion(); string nombre, notastrig; WriteLine("Ingrese el Nombre de la evalucion"); Printer.PresioneEnter(); nombre = Console.ReadLine(); if (string.IsNullOrEmpty(nombre)) { throw new ArgumentException($"El valor del {nameof(nombre)} no puede ser vacio"); } else { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre de la evaluacion ha sido ingresado"); } /*////////////////////////////////////////////*/ WriteLine("Ingrese La NOTA de la evalucion"); Printer.PresioneEnter(); notastrig = Console.ReadLine(); if (string.IsNullOrEmpty(notastrig)) { throw new ArgumentException($"El valor del {nameof(notastrig)} no puede ser vacio"); } else { try { newEval.Nota = float.Parse(notastrig); if (newEval.Nota < 0 || newEval.Nota > 5) { throw new ArgumentOutOfRangeException("La nota debe de estar entre 0 y 5"); } WriteLine("La nota de la evaluacion ha sido ingresado"); } catch (ArgumentOutOfRangeException ex) { Printer.WriteTitle(ex.Message); } catch (Exception ex) { Printer.WriteTitle($"{ex.Message} El Valor de la nota no es un numero valido"); } finally { Printer.ExitProgram(); Printer.Beep(2500, 500, 3); } } }
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"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var evalList = reporteador.GetListaEvaluaciones(); var listaAsg = reporteador.GetListaAsignaturas(); var listaEvalXAsig = reporteador.GetDicEvaluaXAsig(); var listaPromXAsig = reporteador.GetPromeAlumnPorAsignatura(); var topFive = reporteador.TopFive("Matemáticas", 5); Printer.WriteTitle("Captura una Evaluación por Consola"); var newEval = new Evaluación(); string nombre, notastring; float nota; WriteLine("Ingrese el nombre de la evauación"); Printer.PresionEnter(); nombre = Console.ReadLine(); if (string.IsNullOrWhiteSpace(nombre)) { throw new ArgumentException("El valor del nombre no puede estar vacio"); WriteLine("Saliendo del programa"); } else { newEval.Nombre = nombre.ToLower(); WriteLine("El nombre de la evaluación ha sido ingresado correctamente"); } WriteLine("Ingrese la nota de la evaluación"); Printer.PresionEnter(); notastring = Console.ReadLine(); if (string.IsNullOrWhiteSpace(notastring)) { Printer.WriteTitle("El valor de la nota no puede estar 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 evaluación ha sido ingresado correctamente"); } catch (ArgumentOutOfRangeException arge) { WriteLine(arge.Message); WriteLine("Saliendo del programa"); } catch (Exception) { Printer.WriteTitle("El valor de la nota no es un numero válido"); WriteLine("Saliendo del programa"); throw; } finally { Printer.WriteTitle("FINALLY"); Printer.Beep(2500, 500, 3); } } }
private static void Main(string[] args) { AppDomain.CurrentDomain.ProcessExit += AccionDelEvento; //AppDomain.CurrentDomain.ProcessExit += (o, s) => Printer.Beep(1000, 1000, 1); //AppDomain.CurrentDomain.ProcessExit -= AccionDelEvento; var engine = new EscuelaEngine(); engine.Inicializar(); Printer.WriteTitle("BIENVENIDOS A LA ESCUELA"); var reporteador = new Reporteador(engine.GetDiccionarioObjetos()); var EvalList = reporteador.GetListaEvaluaciones(); var AsignaturaList = reporteador.GetListAsignaturas(); var DicEval = reporteador.GetDicEvaluacionesPorAsignatura(); var ListaPromXAsignatura = reporteador.GetPromedioAlumnosPorAsignatura(); Printer.WriteTitle("Captura evaluación por consola"); string Nombre, notaString; var newEval = new Evaluación(); WriteLine("Ingrese el nombre de la evaluación:"); Printer.PresioneENTER(); Nombre = Console.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 evaluación ha sido ingresado correctamente."); } WriteLine("Ingrese la nota de la evaluación:"); Printer.PresioneENTER(); notaString = Console.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 de estar entre 0 y 5"); } WriteLine("la nota de la evaluación ha sido ingresado correctamente."); return; } catch (ArgumentOutOfRangeException arge) { Printer.WriteTitle(arge.Message); WriteLine("Saliendo del programa"); } catch (Exception) { Printer.WriteTitle("El valor de la nota no es un número valido"); WriteLine("Saliendo del programa"); } finally { Printer.WriteTitle("FINALLY"); Printer.Beep(2500, 500, 3); } } // foreach (var item in ListaPromXAsignatura) // { // foreach (var alumn in item.Value) // { // var temp = alumn as Alumno; // } // } //Printer.Beep(10000, cantidad: 10); // ImpimirCursosEscuela(engine.Escuela); // var ListaObjetos = engine.GetObjetosEscuela(out int Conteo_Evaluaciones, // out int Conteo_Alumnos, // out int Conteo_Asignaturas, // out int Conteo_Cursos); // var DicTemp = engine.GetDiccionarioObjetos(); // engine.ImprimirDiccionario(DicTemp, true); // Dictionary<int, string> Diccionario = new Dictionary<int, string>(); // Diccionario.Add(10, "Juan"); // Diccionario.Add(23, "Lorem impsum"); // foreach (var llaveValor in Diccionario) // { // WriteLine(llaveValor.Value); // WriteLine(llaveValor.Key); // } // Printer.WriteTitle("Acceso a diccionario"); // WriteLine(Diccionario[10]); // Printer.DrawLine(20); // Printer.DrawLine(20); // Printer.DrawLine(20); // Printer.WriteTitle("Pruebas de poliformismo"); // var Alumno_Test = new Alumno { Nombre = "Pepito Perez" }; // ObjetoEscuelaBase objeto = Alumno_Test; // Printer.WriteTitle("Alumno_or"); // WriteLine($"Alumno: {Alumno_Test.Nombre}"); // WriteLine($"Alumno: {Alumno_Test.UniqueId}"); // WriteLine($"Alumno: {Alumno_Test.GetType()}"); // Printer.WriteTitle("Alumno_pol"); // WriteLine($"Alumno: {objeto.Nombre}"); // WriteLine($"Alumno: {objeto.UniqueId}"); // WriteLine($"Alumno: {objeto.GetType()}"); // var listaObjetos = engine.GetObjetosEscuela(); }