Los siguientes ejercicios te ayudarán a practicar la creación de clases que requieran el uso de listas, iteradores y el manejo de excepciones personalizadas. Están ordenados por nivel de dificultad.
Nivel básico
- Sistema de Inscripción en un Curso
Crea un sistema para gestionar la inscripción de estudiantes en un curso. Debe haber una claseEstudiante, conidynombre, y una claseCursoque contenga una lista de estudiantes. Implementa métodos para añadir y eliminar estudiantes por id. Si se intenta eliminar un estudiante que no está inscrito, lanza una excepción personalizadaEstudianteNoEncontradoException. - Biblioteca Digital
Crea un sistema para gestionar una biblioteca. Implementa la claseLibrocontítuloyautor. La claseBibliotecadebe contener una lista de libros y permitir añadir y eliminar libros por título. Si se intenta eliminar un libro no registrado, lanza una excepciónLibroNoEncontradoException. 
Nivel intermedio
- Gestión de un Club
Crea un sistema para administrar miembros de un club. La claseMiembrotienenombreyid. La claseClubtiene una lista de miembros y permite añadir y eliminar miembros por id. Si se intenta eliminar un miembro que no existe, lanza una excepciónMiembroNoEncontradoException. - Carrito de Compras
Implementa una claseProductoconnombreyprecio. La claseCarritoCompradebe permitir agregar y eliminar productos por nombre. Si se intenta eliminar un producto que no está en el carrito, lanza una excepciónProductoNoEncontradoException. - Gestor de Eventos
Crea una aplicación para gestionar eventos. La claseEventotienenombre,fechayubicación. La claseCalendarioalmacena una lista de eventos y permite añadir y eliminar eventos por nombre y fecha. Si se intenta eliminar un evento que no existe, lanza una excepciónEventoNoEncontradoException. 
Nivel avanzado
- Sistema de Gestión de Reservas
Desarrolla un sistema para manejar reservas de hotel. La claseReservacontienenombreCliente,fechaInicioyfechaFin. La claseHotelmaneja una lista de reservas y permite añadir y eliminar reservas por cliente y fechas. Si se intenta eliminar una reserva inexistente, lanza una excepciónReservaNoEncontradaException. - Plataforma de Streaming
Crea una aplicación para gestionar una plataforma de streaming. La claseUsuariotienenombreyemail. La clasePlataformacontiene una lista de usuarios y permite agregar y eliminar usuarios poremail. Si se intenta eliminar un usuario no registrado, lanza una excepciónUsuarioNoEncontradoException. - Sistema de Gestión de Empleados
Implementa un sistema para administrar empleados en una empresa. La claseEmpleadotienenombreydni. La claseEmpresamaneja una lista de empleados y permite agregar y eliminar empleados pordni. Si se intenta eliminar un empleado que no existe, lanza una excepciónEmpleadoNoEncontradoException. - Red Social Simplificada
Crea una red social donde los usuarios puedan agregarse como amigos. La claseUsuariotienenombreyid, y una lista de amigos. La claseRedSocialmaneja una lista de usuarios y permite eliminar amigos por nombre y también porid. Si se intenta eliminar un amigo inexistente, lanza una excepciónAmigoNoEncontradoException. Si se intenta eliminar un amigo de la lista y hay nombres duplicados lanzaNombreDuplicadoException. - Sistema de Inventario:
- Crea un sistema que administre un inventario de productos en un almacén.
- Permite agregar nuevos productos al inventario, incluyendo nombre, descripción, cantidad y precio.
 - Permite eliminar productos del inventario por nombre.
 - Permite actualizar la cantidad de un producto.
 - Permite buscar productos por nombre o descripción.
 
 - Excepción Personalizada:
ProductoInexistenteException: Se lanza cuando se intenta acceder a un producto que no existe en el inventario.CantidadInsuficienteException: Se lanza cuando se intenta retirar más productos de los que hay en stock.
 
 - Crea un sistema que administre un inventario de productos en un almacén.
 - Gestor de tareas:
- Implementa una aplicación que permita gestionar una lista de tareas. La clase 
Tareadebe tener unnombrey unestado(pendiente o completada). La claseListaTareasdebe permitir agregar y eliminar tareas con un iterador. - Excepción Personalizada:
TareaInexistenteException: Se lanza cuando se intenta modificar o eliminar una tarea que no existe.FechaInvalidaException: Se lanza cuando se intenta crear una tarea con una fecha límite inválida.
 
 - Implementa una aplicación que permita gestionar una lista de tareas. La clase 
 - Sistema de Gestión de Libros:
- Crea un programa que gestione una biblioteca de libros.
- Permite agregar nuevos libros con título, autor, ISBN y disponibilidad.
 - Permite prestar libros a usuarios.
 - Permite devolver libros.
 - Permite buscar libros por título, autor o ISBN.
 - Permite borrar libros por ISBN.
 
 - Excepción Personalizada:
LibroInexistenteException: Se lanza cuando se intenta acceder a un libro que no existe en la biblioteca.LibroPrestadoException: Se lanza cuando se intenta prestar un libro que ya está prestado.
 
 - Crea un programa que gestione una biblioteca de libros.
 - Sistema de Gestión de Alumnos:
- Desarrolla un programa que permita a un profesor gestionar una lista de alumnos.
- Permite agregar nuevos alumnos con nombre, apellido y número de matrícula.
 - Permite eliminar alumnos por nombre y apellido.
 - Permite modificar la información de un alumno.
 - Permite consultar la lista de alumnos.
 
 - Excepción Personalizada:
AlumnoInexistenteException: Se lanza cuando se intenta acceder a un alumno que no existe en la lista.MatriculaDuplicadaException: Se lanza cuando se intenta agregar un alumno con una matrícula que ya está en uso.
 
 - Desarrolla un programa que permita a un profesor gestionar una lista de alumnos.
 


Deja una respuesta