1) Rehaga el ejercicio 3 de la práctica 3 haciendo privados todos los campos y definiendo
un constructor adecuado y un método público imprimir() que escribe en la consola los campos del objeto con el formato requerido para el listado. En el constructor utilice parámetros cuyos nombres coincidan con los campos privados del objeto. 2) Modifique el programa anterior definiendo un método público cumpleaños que incremente en un año la edad de la persona. Utilícelo para recorrer el arreglo de personas e incrementar en uno la edad de todos cuyos nombres comienzan con vocal. 3) Modifique el programa anterior agregando un campo privado FechaNacimiento. Defina un nuevo constructor que reciba como parámetros el nombre, la fecha de nacimiento (un DateTime) y el dni. Utilice ambos constructores para resolver el ejercicio, permitiendo ahora que el usuario tipee las entradas como: "Nombre<TAB>Documento<TAB>Edad<ENTER>" o bien: "Nombre<TAB>Documento<TAB>fecha de nacimiento<ENTER>". 4) Implemente la clase Agenda vista en teoría. 5) Implemente la clase Alumno para modelar alumnos en una Universidad. Agréguele como estado lo que considere necesario para el problema. Piense como implementaría los horarios de cursada de un alumno. Como comportamiento Implemente el método inscripcionACursada(string diahora, string materia); 6) Implemente la clase Profesor para modelar profesores en una Universidad. Agréguele como estado lo que considere necesario para el problema. Piense como implementaría los horarios de dictado de clases de un profesor. Como comportamiento Implemente el método dictadoDeCurso(string diahora, string materia); 7) Utilizando las clases definidas en los ejercicios anteriores implemente una clase Universidad que permita: a) La inscripción de alumnos a materias b) La asignación de profesores a las materias c) Listar el profesor y los alumnos de una determinada materia 8) Modifique el ejercicio anterior implementando la clase Materia que permita asociar al profesor y a los alumnos inscriptos en ella. 9) El dueño de un estacionamiento de vehículos desea un sistema para la administración de los lugares disponibles. El dueño desea que el sistema le permita: - Saber si hay lugar disponible ante la llegada de un vehículo. - Cobrar la estadía a un vehículo cuando éste abandona el estacionamiento. - Reservar lugares para clientes frecuentes (es decir un lugar podría estar libre, pero reservado). Modele con objetos el sistema pedido). Piense en que clases tendría el sistema y el estado y el comportamiento de cada una de ellas. Al momento de diseñar el modelo tenga en cuenta para que otros sistemas podría llegar a utilizarse el modelo completo o parte de este. 10) ¿En qué otros problemas puede utilizar el modelo diseñado en el ejercicio anterior?