Respuestas modelo
Consulta aquí las respuestas correctas y explicaciones de las autoevaluaciones y los tests del manual. Ideal para repasar antes de un test o aclarar dudas.
B2 · Boss Final 2 — Sistema de Gestión de Biblioteca
10 preguntas con respuesta en este tema.
🎯 Autoevaluación (2)
¿Qué elementos típicamente tiene un sistema de gestión de biblioteca?
- A. Solo libros
- B. Libros, usuarios, préstamos, devoluciones, multas ✓ CORRECTA
- C. Solo préstamos
- D. Solo multas
Un sistema de biblioteca gestiona: catálogo de libros, registro de usuarios, préstamos, devoluciones, cálculo de multas.
¿Cómo organizarías el código de un sistema de gestión?
- A. Todo en un solo archivo
- B. Módulos: libros, usuarios, préstamos, cada uno con sus funciones ✓ CORRECTA
- C. Solo funciones globales
- D. Sin estructura
Modularidad: separar responsabilidades. Cada módulo con sus datos y operaciones. Facilita mantenimiento y testing.
📝 Test · Sección A · Opción múltiple (5)
Un sistema de gestión de biblioteca necesita:
- A. Solo libros
- B. Libros, usuarios, préstamos, devoluciones, multas ✓ CORRECTA
- C. Solo multas
- D. Solo fechas
Dominio completo: entidades (libros, usuarios) + operaciones (préstamos, multas).
Para modelar entidades en C++ usas:
- A. Variables globales
- B. struct o class ✓ CORRECTA
- C. Arrays solamente
- D. Solo funciones
struct/class agrupa datos relacionados. Ej: struct Libro { string titulo; int isbn; }.
Para persistir datos del sistema entre ejecuciones:
- A. Variables
- B. Archivos o base de datos ✓ CORRECTA
- C. Memoria
- D. No se puede
Persistencia: archivos de texto/binario o base de datos.
¿Qué operación es esencial en un sistema de biblioteca?
- A. Imprimir
- B. Registrar préstamo con fecha de devolución ✓ CORRECTA
- C. Solo lectura
- D. Solo escritura
Préstamo: asocia libro con usuario y fecha de devolución. Core del sistema.
El sistema debe calcular multas por:
- A. Cada visita
- B. Días de retraso en la devolución ✓ CORRECTA
- C. Cada libro
- D. Cada usuario
Multa = días_retraso * tarifa_diaria.
✍️ Test · Sección B · Preguntas abiertas (3)
Diseña las entidades y operaciones principales de un sistema de gestión de biblioteca. Usa struct en pseudocódigo.
struct Libro { int isbn; string titulo; string autor; bool disponible; }; struct Usuario { int id; string nombre; string correo; }; struct Prestamo { Libro* libro; Usuario* usuario; Date fechaPrestamo; Date fechaDevolucion; }. Operaciones: registrarLibro, registrarUsuario, prestarLibro, devolverLibro, calcularMulta.
¿Cómo modelarías la multa por retraso en la devolución?
multa = max(0, diasRetraso) * tarifaDiaria. diasRetraso = max(0, hoy - fechaDevolucion). tarifaDiaria = constante (ej: $5/día). Implementación: función calcularMulta(Prestamo p) que recibe el préstamo y devuelve el monto.
¿Qué archivos usaría para persistir los datos de la biblioteca entre ejecuciones?
Tres archivos: libros.txt (ISBN, título, autor, disponible), usuarios.txt (id, nombre, correo), prestamos.txt (id_prestamo, isbn, id_usuario, fecha_p, fecha_d). Formato: CSV o JSON. Cargar al inicio, escribir al salir.
📝 ¿Listo para evaluarte?
Regístrate o inicia sesión para tomar la autoevaluación o el test de este tema y registrar tu puntaje.