Skip to content

JazminLopezQB/PP3_TP_Final

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trabajo Practico Integrador Final de Paradigmas de Programación 3

Integrantes del Equipo


Objetivo del Sistema

  • El objetivo del sistema es facilitar el trabajo de gestión de un centro educativo permitiendo:
    • Gestionar Cursos disponibles: Crear, eliminar y visualizar información sobre las propuestas educativas del centro, además de registrar inasistencias.
    • Gestionar Personal Docente: Contratar, despedir y visualizar información sobre los profesores del centro además de asignarlos a cursos.
    • Gestionar Alumnos Inscritos: Inscribir, dar de baja y visualizar información de los alumnos particulares además de registrar sus calificaciones.

Instrucciones de Compilación

  • Asegurese previamente de tener GCC/MinGW en su sistema, luego ejecute los pasos detallados a continuación.

Windows

  • Como el sistema utiliza la biblioteca ncurses, incompatible nativamente con su sistema, para generar su interfaz deberá descargar y configurar Windows WSL previamente o utilizar un compilador online como GDB Online Debugger.
    • Si utiliza WSL: Abra la terminal de su subsistema y siga los pasos especificados para sistemas Linux.
    • Si utiliza el compilador online: Cargue manualmente todos los archivos cuya terminación sea .cpp o .h y oprima el botón de "Run" mientras se enfoca en el archivo main.cpp.

Linux

  1. Descargue el código del proyecto o clone el repositorio mediante el comando git clone [email protected]:JazminLopezQB/PP3_TP_Final.git.
  2. Abra la carpeta donde se encuentre el código que adquirió en el paso anterior, inicie una terminal en dicha ubicación y siga los siguientes pasos:
    • Si cuenta con Cmake en su sistema: Ejecute el siguiente código en su terminal
    mkdir build && cd build
    cmake ..
    make
    • Si no cuenta con Cmake en su sistema: Copie y ejecute la siguiente linea en su terminal g++ -o SALIDA main.cpp Auxiliares/admi_alumnos.cpp Auxiliares/admi_cursos.cpp Auxiliares/admi_profesores.cpp Auxiliares/generales.cpp Auxiliares/interfaz.cpp Auxiliares/menus.cpp Auxiliares/metodos.cpp Auxiliares/Clases.h -lncurses
  3. De permisos de ejecución al programa generado con chmod +x ./SALIDA.
  4. Ejecute el programa con ./SALIDA

Instrucciones de Uso

  • Tras compilar y ejecutar el programa, se mostrará el menú principal con las siguientes opciones: "Administración de Cursos", "Administración de Profesores", "Administración de Alumnos" y la opción para volver hacia "Atrás".

La opción puede ser seleccionada mediante la tecla ENTER luego de desplazarse con las flechas del teclado; como también es posible seleccionar con un click del mouse en la posición del recuadro.

Administración de Cursos

  • Tras validar la opción elegida en el menú principal, se abre un submenu dedicado a los cursos que cuenta con:
  1. Ver cursos disponibles: al ingresar en esta opción se muestra los cursos ya agregados al sistema. En caso de querer ver a detalle un curso puntual, debe ingresar el código del curso con el cual lo agregó al sistema; sino presione ENTER y lo llevará nuevamente al submenú de cursos.

    • Si ingresa el código de un curso específico se abrirá un segundo submenú para ver detalles o realizar acciones competentes a los cursos:
      1. Ver detalles: Mostrará los detalles necesarios de un curso, como por ejemplo el nombre del curso que seleccionó, los profesores a cargo de la materia, y finalmente un listado de alumnos inscriptos en el mismo.
      2. Pasar Asistencia: En esta opción se pasará por cada alumno del sistema que esté inscripto en el curso y se le consultará si el mismo estuvo presente 'p' o austente 'a'. Deberá colocar la letra correspondiente por cada alumno hasta finalizar la lista.
      3. Justificar la falta de un alumno: Pedirá para el caso, que ingrese el id del alumno perteneciente al curso cuya falta desea justificar.
      4. Registrar Notas: Listará cada alumno perteneciente al curso, y se le consultará qué nota desea agregar a su historial. La nota debe ser pide, un número entre 0 y 10, caso contrario pedirá el reingreso de una nota válida.
      5. Atras.
  2. Agregar nuevo curso: Tras la confirmación de la opción elegida, se le pedirá que ingrese por teclado en primer lugar el nombre del curso y luego un código identificador (se prevee la excepción en códigos negativos o repetidos). Luego de los ingresos volverá al submenú de cursos.

  3. Eliminar curso existente: Una vez confirmada la elección, se le pide el ingreso por teclado del código identificador del curso a eliminar, si el código es correcto y pertenece a un curso del sistema, el mismo será eliminado. Posteriormente se le regresa al submenú de cursos.

  4. Atras.

Administración de Profesores

  • Tras validar la opción elegida en el menú principal, se abre un submenu dedicado a los profesores.
  1. Ver profesores disponibles: al ingresar en esta opción se muestra los profesores ya agregados al sistema. En caso de querer ver a detalle un profesor puntual, debe ingresar el id del mismo con el cual lo agregó al sistema; sino presione ENTER y lo llevará nuevamente al submenú.

    • Si ingresa el id de un profesor específico se abrirá un segundo submenú para ver detalles o realizar acciones competentes:
      1. Inscribir a curso: En esta opción se consulta un código de curso válido y existente, con el fin de registrar a ese profesor en el curso.
      2. Dar de baja a curso: pide que ingrese por teclado el código del curso donde el profesor dejará de dar clases.
      3. Ver detalles: Mostrará los detalles necesarios de un profesor, como por ejemplo el nombre del profesor que seleccionó, y un listado de cursos en los que se destaca como docente.
      4. Atras.
  2. Contratar un nuevo profesor: Tras la confirmación de la opción elegida, se le pedirá que ingrese por teclado en primer lugar el nombre de pila del docente, luego su apellido y finalmente un id identificador (se prevee la excepción en ids negativos o repetidos). Luego de los ingresos volverá al submenú de cursos tras apretar una tecla.

  3. Despedir un profesor: Una vez confirmada la elección, se le pide el ingreso por teclado del id identificador del docente a eliminar, si el código es correcto y pertenece a un listado de personas del sistema, el mismo será eliminado y dado de baja de cada curso en el cual dictaba clases. Posteriormente tras un ingreso de una tecla cualquiera, se le regresa al submenú de profesores.

  4. Atras.

Administración de Alumnos

  • Tras validar la opción elegida en el menú principal, se abre un submenu dedicado a los alumnos.
  1. Ver alumnos inscriptos: Al ingresar en esta opción se muestra los alumnos ya agregados al sistema. En caso de querer ver a detalle un alumno puntual y hacerle un seguimiento, debe ingresar el id del mismo con el cual lo agregó al sistema; sino presione ENTER y lo llevará nuevamente al submenú.

    • Si ingresa el id de un alumno específico se abrirá un segundo submenú para ver detalles o realizar acciones competentes:
      1. Inscribir a curso: En esta opción se consulta un código de curso válido y existente, con el fin de registrar a ese alumno en el curso.
      2. Dar de baja a curso: Pide que ingrese por teclado el código del curso donde el alumno está dándose de baja.
      3. Ver detalles: Mostrará los detalles necesarios de un alumno, como por ejemplo el nombre del alumno que seleccionó, y un listado de cursos en los que se destaca, junto con las inasistencias y notas registradas en ada curso.
      4. Atras.
  2. Inscribir nuevo alumno: Tras la confirmación de la opción elegida, se le pedirá que ingrese por teclado en primer lugar el nombre de pila del alumno, luego su apellido y finalmente un id identificador (se prevee la excepción en ids negativos o repetidos). Luego de los ingresos volverá al submenú de cursos tras apretar una tecla.

  3. Dar de baja alumno: Una vez confirmada la elección se le pide el ingreso por teclado del id identificador del alumno a eliminar, si el código es correcto y pertenece a un listado de personas del sistema, el mismo será eliminado y dado de baja de todos los cursos a los que se había inscripto. Posteriormente tras un ingreso de una tecla cualquiera, se le regresa al submenú de profesores.

  4. Atras.


Organización del Proyecto

  • main.cpp: Programa principal e inicializaciones
  • Auxiliares
    ├── Clases.h: Declaración de clases y prototipos de funciones
    ├── generales.cpp: Mayoría de funciones del programa, fuera de la UI
    ├── interfaz.cpp: Funciones de generación de interfaz
    ├── menus.cpp: Funciones de creación de menues
    └── metodos.cpp: Definición de metodos fuera de Clases.h
  • Documentos: Carpeta con las consignas y documentos relacionados al proyecto

Tareas Pendientes

  • Funcionalidades:
    • Gestionar Cursos disponibles:
      • Crear
      • Eliminar
      • Visualizar información
      • Registrar inasistencias (solo a los alumnos del curso) y hacer un ENTER para que no sobreescriba.
    • Gestionar Personal Docente
      • Contratar
      • Despedir
      • Visualizar información
      • Asignar a curso
      • Dar de baja de curso
    • Gestionar Alumnos Inscritos:
      • Inscribir
      • Dar de baja
      • Visualizar información
      • Inscribir a curso
      • Dar de baja de curso
      • Registrar sus calificaciones
      • Detalles
    • Menú Principal
    • entradaInvalida
    • confirmacion
    • Limpiar Memoria
  • Añadir clases

About

Codigo del TP integrador para Paradigmas de Programación 3

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •